grub-probefs used to recurse into /dev/.static, then come up with
/dev/.static/dev/hda as my root disk, which later fails to pass the
pathname-based checks that expect things like /dev/[hsf]d[0-9].
2006-09-14 Robert Millan <[EMAIL PROTECTED]>
* util/i386/pc/getroot.c: Don't recurse into dotdirs (e.g. ".static").
--
Robert Millan
My spam trap is [EMAIL PROTECTED] Note: this address is only intended for
spam harvesters. Writing to it will get you added to my black list.
2006-09-14 Robert Millan <[EMAIL PROTECTED]>
* util/i386/pc/getroot.c: Don't recurse into dotdirs (e.g. ".static").
Index: util/i386/pc/getroot.c
===================================================================
RCS file: /sources/grub/grub2/util/i386/pc/getroot.c,v
retrieving revision 1.4
diff -u -r1.4 getroot.c
--- util/i386/pc/getroot.c 4 Apr 2004 13:46:03 -0000 1.4
+++ util/i386/pc/getroot.c 14 Sep 2006 17:36:24 -0000
@@ -160,9 +160,11 @@
/* Don't follow symbolic links. */
continue;
- if (S_ISDIR (st.st_mode))
+ if (S_ISDIR (st.st_mode) && ent->d_name[0] != '.')
{
- /* Find it recursively. */
+ /* Find it recursively, but avoid dotdirs (like ".static") since they
+ could contain duplicates, which would later break the pathname-based
+ check */
char *res;
res = find_root_device (ent->d_name, dev);
_______________________________________________
Grub-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/grub-devel