Re: bug report: symbolic-ref --short command echos the wrong text while use Chinese language
On Mon, Feb 13, 2023 at 8:39 PM Jeff King <peff@peff.net> wrote:
Show 16 quoted lines
> On Mon, Feb 13, 2023 at 05:58:06PM -0500, Eric Sunshine wrote:
> > I am able to reproduce the broken behavior on maOS 10.13.
>
> If you do something like the patch below:
>
> - short_name = xstrdup(refname);
> + warning("strlen(refname) = %d", (int)strlen(refname));
> + short_name = xcalloc(1, 2*strlen(refname));
>
> short_name_len = strlen(short_name);
> + warning("strlen(short_name) = %d", (int)short_name_len);
>
> Does it help at all? And if so, is short_name_len longer than we might
> expect it to be (I get 39 for the full refname and 28 for the scanf'd
> name). I'm having trouble coming up with a reason that the scanf value
> _would_ be unexpectedly long, but just trying to rule things out.I get results different from yours:
warning: strlen(refname) = 39
warning: strlen(short_name) = 9