Tuesday, May 24, 2011

Re: [BUG] 'non-empty string' >? '' returns false on amd64 arch

I confirm the problem. Looks like there's a bug in UTF-8 handling in
function mb_strnicmp() in mbyte.c, specifically in the following "if"
which was introduced by patch 7.3.040:

/* Don't case-fold illegal bytes or truncated characters. */
if (utf_ptr2len(s1 + i) < l || utf_ptr2len(s2 + i) < l)
return -1;

The check "utf_ptr2len(s2 + i) < l" is wrong.


On Mon, May 23, 2011 at 23:33, ZyX <zyx.vim@gmail.com> wrote:
> I guess it's time to post this to vim-dev as a bug since we managed to deduce
> conditions under which it is reproduced. I personally can say that I was able to
> reproduce it on vim-7.3.198 (--with-features=huge --enable-perlinterp --enable-
> tclinterp --enable-luainterp --enable-rubyinterp --enable-python3interp,
> revision f0cc719cd129) and vim-7.3.189 (USE='X acl bash-completion cscope gpm
> nls perl python ruby vim-pager -debug -minimal') from gentoo repos on amd64.

--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

No comments:

Post a Comment