On Fri, Nov 16, 2007 at 04:41:58PM +0100, Dr. Werner Fink wrote:
> Hi,
> 
> the scriptlet
> 
>    export LANG="ja_JP.SJIS"
>    # Multi byte character \0201[
>    b=[
>    echo $b
>    echo "$b"
> 
> produces broken output for `"$b"' but not for `$b'.  The
> attached patch should fix this problem.
> 

[...]

> +#if SHOPT_MULTIBYTE
> +                     if(mbwide())
> +                     {       ssize_t len = mbsize(cp);
> +                             if (len > 1)
> +                             {       cp += len;

a line like
                                        size -= (len - 1);

seems to be  missed here, sorry.

> +                                     continue;
> +                             }
> +                     }
> +#endif /* SHOPT_MULTIBYTE */
>                       c = state[n= *(unsigned char*)cp++];
>                       if(nopat&&(c==S_PAT||c==S_ESC||c==S_BRACT||c==S_ENDCH) 
> && mp->pattern!=3)
>                               c=1;


       Werner

-- 
 Dr. Werner Fink <[EMAIL PROTECTED]>
 SuSE LINUX Products GmbH,  Maxfeldstrasse 5,  Nuernberg,  Germany
 GF: Markus Rex,  HRB 16746 (AG Nuernberg)
 phone: +49-911-740-53-0,  fax: +49-911-3206727,  www.opensuse.org
------------------------------------------------------------------
  "Having a smoking section in a restaurant is like having
          a peeing section in a swimming pool." -- Edward Burr
_______________________________________________
ast-developers mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-developers

Reply via email to