=== modified file 'ChangeLog'
--- ChangeLog	2009-10-30 22:51:52 +0000
+++ ChangeLog	2009-11-01 18:39:54 +0000
@@ -1,3 +1,8 @@
+2009-11-02  BVK Chaitanya  <bvk.groups@gmail.com>
+
+	* kern/misc.c: Fixed grub_strchr and grub_strrchr functions for
+	'\0' case.
+
 2009-10-30  Robert Millan  <rmh.grub@aybabtu.com>
 
 	Fix build problem.

=== modified file 'kern/misc.c'
--- kern/misc.c	2009-08-24 19:40:40 +0000
+++ kern/misc.c	2009-11-02 05:41:24 +0000
@@ -223,12 +223,13 @@
 char *
 grub_strchr (const char *s, int c)
 {
-  while (*s)
+  do
     {
       if (*s == c)
 	return (char *) s;
       s++;
     }
+  while (*s);
 
   return 0;
 }
@@ -238,12 +239,12 @@
 {
   char *p = 0;
 
-  while (*s)
+  do
     {
       if (*s == c)
 	p = (char *) s;
-      s++;
     }
+  while (*s++);
 
   return p;
 }

