Blob Blame History Raw
Index: grub/stage2/fsys_ext2fs.c
diff -u grub/stage2/fsys_ext2fs.c:1.13 grub/stage2/fsys_ext2fs.c:1.14
--- grub/stage2/fsys_ext2fs.c:1.13	Tue Dec 30 12:36:13 2003
+++ grub/stage2/fsys_ext2fs.c	Sat Aug  7 06:48:58 2004
@@ -432,12 +432,16 @@
       if (size > len)
 	size = len;
 
-      disk_read_func = disk_read_hook;
+      if (map == 0) {
+        memset ((char *) buf, 0, size);
+      } else {
+        disk_read_func = disk_read_hook;
 
-      devread (map * (EXT2_BLOCK_SIZE (SUPERBLOCK) / DEV_BSIZE),
-	       offset, size, buf);
+        devread (map * (EXT2_BLOCK_SIZE (SUPERBLOCK) / DEV_BSIZE),
+	         offset, size, buf);
 
-      disk_read_func = NULL;
+        disk_read_func = NULL;
+      }
 
       buf += size;
       len -= size;