diff options
Diffstat (limited to 'libre/grub-parabola/grub-2.00.5086-fix-lvm-parsing.patch')
-rw-r--r-- | libre/grub-parabola/grub-2.00.5086-fix-lvm-parsing.patch | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/libre/grub-parabola/grub-2.00.5086-fix-lvm-parsing.patch b/libre/grub-parabola/grub-2.00.5086-fix-lvm-parsing.patch deleted file mode 100644 index 9a2eb3ff7..000000000 --- a/libre/grub-parabola/grub-2.00.5086-fix-lvm-parsing.patch +++ /dev/null @@ -1,54 +0,0 @@ -There is no explicit option to turn off alignment; it is implicitly -disabled if one of --separator or --nameprefixes option is used. - ---separator was added in 2007, --nameprefixes - in 2009. So let's use ---separator to extend range of versions we are compatible with. Note that -one or another must be used, current parsing is broken otherwise. - -Signed-off-by: Andrey Borzenkov <address@hidden> - ---- - util/getroot.c | 12 +++++++++--- - 1 file changed, 9 insertions(+), 3 deletions(-) - -diff --git a/util/getroot.c b/util/getroot.c -index 2ad8a55..3afcf96 100644 ---- a/util/getroot.c -+++ b/util/getroot.c -@@ -1322,7 +1322,7 @@ grub_util_get_dev_abstraction (const char *os_dev) - static void - pull_lvm_by_command (const char *os_dev) - { -- char *argv[6]; -+ char *argv[8]; - int fd; - pid_t pid; - FILE *mdadm; -@@ -1351,12 +1351,17 @@ pull_lvm_by_command (const char *os_dev) - - /* execvp has inconvenient types, hence the casts. None of these - strings will actually be modified. */ -+ /* by default PV name is left aligned in 10 character field, meaning that -+ we do not know where name ends. Using dummy --separator disables -+ alignment. We have a single field, so separator itself is not output */ - argv[0] = (char *) "vgs"; - argv[1] = (char *) "--options"; - argv[2] = (char *) "pv_name"; - argv[3] = (char *) "--noheadings"; -- argv[4] = vgname; -- argv[5] = NULL; -+ argv[4] = (char *) "--separator"; -+ argv[5] = (char *) ":"; -+ argv[6] = vgname; -+ argv[7] = NULL; - - pid = exec_pipe (argv, &fd); - free (vgname); -@@ -1376,6 +1381,7 @@ pull_lvm_by_command (const char *os_dev) - while (getline (&buf, &len, mdadm) > 0) - { - char *ptr; -+ /* LVM adds two spaces as standard prefix */ - for (ptr = buf; ptr < buf + 2 && *ptr == ' '; ptr++); - if (*ptr == '\0') - continue; |