--- a/usr/src/grub/grub-0.97/stage2/disk_io.c Thu Jul 30 16:15:07 2009 +0100
+++ b/usr/src/grub/grub-0.97/stage2/disk_io.c Thu Jul 30 09:40:30 2009 -0600
@@ -431,8 +431,15 @@
{
#ifndef STAGE1_5
for (fsys_type = 0; fsys_type < NUM_FSYS; fsys_type++)
+ {
+ /*
+ * (re)set errnum to 0 in order to clear any state that may have
+ * been left from a previous mount (or other) routine.
+ */
+ errnum = 0;
if ((fsys_table[fsys_type].mount_func) ())
break;
+ }
if (fsys_type == NUM_FSYS && errnum == ERR_NONE)
errnum = ERR_FSYS_MOUNT;