]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* grub-core/fs/bfs.c (bfs_strcmp) [MODE_AFS]: Use signed comparison.
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Fri, 4 May 2012 08:52:26 +0000 (10:52 +0200)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Fri, 4 May 2012 08:52:26 +0000 (10:52 +0200)
ChangeLog
grub-core/fs/bfs.c

index 3d2f9b098551d36c7852d21c059bfadcea83e269..4cfd492451899c8c6fc981d0a206e642ec01bf03 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2012-05-04  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * grub-core/fs/bfs.c (bfs_strcmp) [MODE_AFS]: Use signed comparison.
+
 2012-05-04  Samuel Thibault <samuel.thibault@ens-lyon.org>
 
        * util/getroot.c (find_hurd_root_device): Try to make error message
index ead4dfac4219241c9710150593cabc6ca705c933..f050bc98ee998f2aea6a710e212ab927f8d28b0c 100644 (file)
@@ -519,10 +519,17 @@ bfs_strcmp (const char *a, const char *b, grub_size_t alen)
       alen--;
     }
 
+#ifdef MODE_AFS
   if (!alen)
-  return - (int) (grub_uint8_t) *b;
+    return - (int) (grub_int8_t) *b;
+
+  return (int) (grub_int8_t) *a - (int) (grub_int8_t) *b;
+#else
+  if (!alen)
+    return - (int) (grub_uint8_t) *b;
 
   return (int) (grub_uint8_t) *a - (int) (grub_uint8_t) *b;
+#endif
 }
 
 static grub_err_t