]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
2009-12-20 Vladimir Serbinenko <phcoder@gmail.com>
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 20 Dec 2009 20:08:03 +0000 (21:08 +0100)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 20 Dec 2009 20:08:03 +0000 (21:08 +0100)
* util/i386/pc/grub-setup.c (setup): Don't install on non-GPT,
non-MSDOS paritions.

ChangeLog
util/i386/pc/grub-setup.c

index 493bcfed134e3445b80fdfc72b5f4acb6db9ae6d..685da03ff28a0e2431dce4f804170cadf193d784 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-20  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * util/i386/pc/grub-setup.c (setup): Don't install on non-GPT,
+       non-MSDOS paritions.
+
 2009-12-19  Vladimir Serbinenko  <phcoder@gmail.com>
 
        * include/grub/types.h (UNUSED): Removed since it conflicts with
index 1c7e8452f51e20d44860fe0af4d7011eb903a853..c2b9b9268627b12d88557c79f72c230980ece687 100644 (file)
@@ -356,8 +356,12 @@ setup (const char *dir,
       goto unable_to_embed;
     }
 
-  grub_partition_iterate (dest_dev->disk, (strcmp (dest_partmap, "part_msdos") ?
-                                          find_usable_region_gpt : find_usable_region_msdos));
+  if (strcmp (dest_partmap, "part_msdos") == 0)
+    grub_partition_iterate (dest_dev->disk, find_usable_region_msdos);
+  else if (strcmp (dest_partmap, "part_gpt") == 0)
+    grub_partition_iterate (dest_dev->disk, find_usable_region_gpt);
+  else
+    grub_util_error (_("No DOS-style partitions found"));
 
   if (embed_region.end == embed_region.start)
     {