Package: zsh
Version: 4.2.5-10
Severity: normal
Tags: patch

If user set LC_ALL to not C locale, complementation for subcommand
won't work. I got following error with LC_ALL=ja_JP.UTF-8.

[EMAIL PROTECTED]:~% svn <tab>
_svn_command:5: bad set of key/value pairs for associative array

I think, comp functions should use LC_ALL insted of LC_MESSAGES.

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.12
Locale: LANG=ja_JP.UTF-8, LC_CTYPE=ja_JP.UTF-8 (charmap=UTF-8) (ignored: LC_ALL 
set to ja_JP.UTF-8)

Versions of packages zsh depends on:
ii  debconf                     1.4.55       Debian configuration management sy
ii  libc6                       2.3.2.ds1-22 GNU C Library: Shared libraries an
ii  libncurses5                 5.4-9        Shared libraries for terminal hand
ii  passwd                      1:4.0.3-39   change and administer password and

Versions of packages zsh recommends:
ii  libcap1                       1:1.10-14  support for getting/setting POSIX.
ii  libpcre3                      5.0-1.1    Perl 5 Compatible Regular Expressi

-- debconf information:
  zsh/rcmove:

-- 
Tatsuki Sugiura   mailto:[EMAIL PROTECTED]
--- orig/_subversion    2005-07-15 01:01:32.000000000 +0900
+++ new/_subversion     2005-08-06 03:32:20.000000000 +0900
@@ -65,7 +65,7 @@
   if (( ! $+_svn_cmds )); then
     typeset -gA _svn_cmds
     _svn_cmds=(
-      ${=${(f)${${"$(LC_MESSAGES=C _call_program commands svn 
help)"#l#*Available subcommands:}%%Subversion is a 
tool*}}/(#s)[[:space:]]#(#b)([a-z]##)[[:space:]]#(\([a-z, ?]##\))#/$match[1] 
:$match[1]${match[2]:+:${${match[2]//[(),]}// /:}}:}
+      ${=${(f)${${"$(LC_ALL=C _call_program commands svn help)"#l#*Available 
subcommands:}%%Subversion is a 
tool*}}/(#s)[[:space:]]#(#b)([a-z]##)[[:space:]]#(\([a-z, ?]##\))#/$match[1] 
:$match[1]${match[2]:+:${${match[2]//[(),]}// /:}}:}
     )
   fi
 
@@ -89,10 +89,10 @@
   local subcmd _svn_subcmds _svn_subcmd_usage
   typeset -A _cache_svn_status
 
-  _svn_subcmd_usage=${${(M)${(f)"$(LC_MESSAGES=C _call_program options svn 
help $1)"}:#usage:*}#usage: $1 }
+  _svn_subcmd_usage=${${(M)${(f)"$(LC_ALL=C _call_program options svn help 
$1)"}:#usage:*}#usage: $1 }
 
   _svn_subcmds=(
-    ${${=${${${(M)${(f)"$(LC_MESSAGES=C _call_program options svn help 
$1)"##*Valid options:}:#* :*}%% #:*}/ arg/:arg:}/(#b)-([[:alpha:]]) 
\[--([a-z-]##)\](:arg:)#/(--$match[2])-$match[1]$match[3] 
(-$match[1])--$match[2]$match[3]}[2,-1]}
+    ${${=${${${(M)${(f)"$(LC_ALL=C _call_program options svn help $1)"##*Valid 
options:}:#* :*}%% #:*}/ arg/:arg:}/(#b)-([[:alpha:]]) 
\[--([a-z-]##)\](:arg:)#/(--$match[2])-$match[1]$match[3] 
(-$match[1])--$match[2]$match[3]}[2,-1]}
   )
 
   case $1 in;
@@ -143,7 +143,7 @@
   if (( ! $+_svnadmin_cmds )); then
     typeset -gA _svnadmin_cmds
     _svnadmin_cmds=(
-      ${=${(f)${${"$(LC_MESSAGES=C _call_program commands svnadmin 
help)"#l#*Available 
subcommands:}}}/(#s)[[:space:]]#(#b)([a-z]##)[[:space:]]#(\([a-z, 
?]##\))#/$match[1] :$match[1]${match[2]:+:${${match[2]//[(),]}// /:}}:}
+      ${=${(f)${${"$(LC_ALL=C _call_program commands svnadmin 
help)"#l#*Available 
subcommands:}}}/(#s)[[:space:]]#(#b)([a-z]##)[[:space:]]#(\([a-z, 
?]##\))#/$match[1] :$match[1]${match[2]:+:${${match[2]//[(),]}// /:}}:}
     )
   fi
 
@@ -166,10 +166,10 @@
 _svnadmin_subcommand () {
   local subcmd _svnadmin_subcmds _svnadmin_subcmd_usage
 
-  _svnadmin_subcmd_usage=${${(M)${(f)"$(LC_MESSAGES=C _call_program options 
svnadmin help $1)"}:#$1: usage:*}#$1: usage: svnadmin $1 }
+  _svnadmin_subcmd_usage=${${(M)${(f)"$(LC_ALL=C _call_program options 
svnadmin help $1)"}:#$1: usage:*}#$1: usage: svnadmin $1 }
 
   _svnadmin_subcmds=(
-    ${${=${${${(M)${(f)"$(LC_MESSAGES=C _call_program options svnadmin help 
$1)"##*Valid options:}:#*:*}%% #:*}/ arg/:arg:}/(#b)-([[:alpha:]]) 
\[--([a-z-]##)\](:arg:)#/(--$match[2])-$match[1]$match[3] 
(-$match[1])--$match[2]$match[3]}[2,-1]}
+    ${${=${${${(M)${(f)"$(LC_ALL=C _call_program options svnadmin help 
$1)"##*Valid options:}:#*:*}%% #:*}/ arg/:arg:}/(#b)-([[:alpha:]]) 
\[--([a-z-]##)\](:arg:)#/(--$match[2])-$match[1]$match[3] 
(-$match[1])--$match[2]$match[3]}[2,-1]}
   )
 
   [[ "$_svnadmin_subcmd_usage" == *REPOS_PATH* ]] &&

Reply via email to