diff options
Diffstat (limited to 'abs/core-testing/grub-gfx/special-devices.patch')
-rw-r--r-- | abs/core-testing/grub-gfx/special-devices.patch | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/abs/core-testing/grub-gfx/special-devices.patch b/abs/core-testing/grub-gfx/special-devices.patch new file mode 100644 index 0000000..894f3e8 --- /dev/null +++ b/abs/core-testing/grub-gfx/special-devices.patch @@ -0,0 +1,18 @@ +--- grub-0.93/lib/device.c.raid 2002-05-20 05:53:46.000000000 -0400 ++++ grub-0.93/lib/device.c 2002-12-28 23:24:10.000000000 -0500 +@@ -689,7 +689,14 @@ + if (strcmp (dev + strlen(dev) - 5, "/disc") == 0) + strcpy (dev + strlen(dev) - 5, "/part"); + } +- sprintf (dev + strlen(dev), "%d", ((partition >> 16) & 0xFF) + 1); ++ ++ sprintf (dev + strlen(dev), "%s%d", ++ /* Compaq smart and others */ ++ (strncmp(dev, "/dev/ida/", 9) == 0 || ++ strncmp(dev, "/dev/ataraid/", 13) == 0 || ++ strncmp(dev, "/dev/cciss/", 11) == 0 || ++ strncmp(dev, "/dev/rd/", 8) == 0) ? "p" : "", ++ ((partition >> 16) & 0xFF) + 1); + + /* Open the partition. */ + fd = open (dev, O_RDWR); |