From: Shreenidhi Shedi <shreenidhi.sh...@broadcom.com> - Stop escaping single and double quotes - Kernel command line handler doesn't support escape quotes
Signed-off-by: Shreenidhi Shedi <shreenidhi.sh...@broadcom.com> --- grub-core/lib/cmdline.c | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/grub-core/lib/cmdline.c b/grub-core/lib/cmdline.c index ed0b149dc..57c96a151 100644 --- a/grub-core/lib/cmdline.c +++ b/grub-core/lib/cmdline.c @@ -22,7 +22,6 @@ static unsigned int check_arg (char *c, int *has_space) { - int space = 0; unsigned int size = 0; while (*c) @@ -51,15 +50,9 @@ unsigned int grub_loader_cmdline_size (int argc, char *argv[]) unsigned int size = 0; for (i = 0; i < argc; i++) - { size += check_arg (argv[i], 0); - size++; /* Separator space or NULL. */ - } - - if (size == 0) - size = 1; - return size; + return size ? size : 1; } grub_err_t @@ -73,8 +66,8 @@ grub_create_loader_cmdline (int argc, char *argv[], char *buf, for (i = 0; i < argc; i++) { c = argv[i]; + space = 0; arg_size = check_arg(argv[i], &space); - arg_size++; /* Separator space or NULL. */ if (size < arg_size) break; @@ -86,11 +79,7 @@ grub_create_loader_cmdline (int argc, char *argv[], char *buf, while (*c) { - if (*c == '\\' || *c == '\'' || *c == '"') - *buf++ = '\\'; - - *buf++ = *c; - c++; + *buf++ = *c++; } if (space) -- 2.40.4 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel