Fix bug.
authorBruno Haible <bruno@clisp.org>
Sun, 11 Feb 2007 17:41:22 +0000 (17:41 +0000)
committerBruno Haible <bruno@clisp.org>
Sun, 11 Feb 2007 17:41:22 +0000 (17:41 +0000)
New tests.

ChangeLog
lib/mbschr.c

index a763008e5cf804cd0dfe42663c3f4ad1c67d8f1f..c521d8617c8079a398e77589bf08270dd8d66229 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2007-02-11  Bruno Haible  <bruno@clisp.org>
+
+       * lib/mbschr.c (mbschr): Fix bug.
+
+       * modules/mbschr-tests: New file.
+       * tests/test-mbschr.sh: New file.
+       * tests/test-mbschr.c: New file.
+       * m4/locale-zh.m4: New file.
+
 2007-02-11  Bruno Haible  <bruno@clisp.org>
 
        Support for copying multibyte string iterators.
index 084694d7a6d2a0b363cac8142bf921943fbedb76..2dc5866a0cc4184c30ca93d2b651d03d499b0ecd 100644 (file)
@@ -41,11 +41,11 @@ mbschr (const char *string, int c)
 
       for (mbui_init (iter, string);; mbui_advance (iter))
        {
+         if (!mbui_avail (iter))
+           goto notfound;
          if (mb_len (mbui_cur (iter)) == 1
              && (unsigned char) * mbui_cur_ptr (iter) == (unsigned char) c)
            break;
-         if (!mbui_avail (iter))
-           goto notfound;
        }
       return (char *) mbui_cur_ptr (iter);
      notfound: