diff options
Diffstat (limited to 'package/busybox/busybox-1.18.2/busybox-1.18.2-modprobe.patch')
-rw-r--r-- | package/busybox/busybox-1.18.2/busybox-1.18.2-modprobe.patch | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/package/busybox/busybox-1.18.2/busybox-1.18.2-modprobe.patch b/package/busybox/busybox-1.18.2/busybox-1.18.2-modprobe.patch new file mode 100644 index 000000000..cad887e05 --- /dev/null +++ b/package/busybox/busybox-1.18.2/busybox-1.18.2-modprobe.patch @@ -0,0 +1,20 @@ +--- busybox-1.18.2/modutils/modutils.c ++++ busybox-1.18.2-modprobe/modutils/modutils.c +@@ -71,12 +71,11 @@ char* FAST_FUNC parse_cmdline_module_opt + optlen = 0; + while (*++argv) { + options = xrealloc(options, optlen + 2 + strlen(*argv) + 2); +- /* Older versions were enclosing space-containing *argv in "", +- * but both modprobe and insmod from module-init-tools 3.11.1 +- * don't do this anymore. (As to extra trailing space, +- * insmod adds it but modprobe does not. We do in both cases) +- */ +- optlen += sprintf(options + optlen, "%s ", *argv); ++ /* Spaces handled by "" pairs, but no way of escaping quotes */ ++//TODO: module-init-tools version 3.11.1 quotes only value: ++//it generates var="val with spaces", not "var=val with spaces" ++//(and it won't quote var *name* even if it has spaces) ++ optlen += sprintf(options + optlen, (strchr(*argv, ' ') ? "\"%s\" " : "%s "), *argv); + } + return options; + } |