diff options
Diffstat (limited to 'modutils/modutils.c')
-rw-r--r-- | modutils/modutils.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/modutils/modutils.c b/modutils/modutils.c index 565d0d22f..415dbbe44 100644 --- a/modutils/modutils.c +++ b/modutils/modutils.c | |||
@@ -71,12 +71,11 @@ char* FAST_FUNC parse_cmdline_module_options(char **argv) | |||
71 | optlen = 0; | 71 | optlen = 0; |
72 | while (*++argv) { | 72 | while (*++argv) { |
73 | options = xrealloc(options, optlen + 2 + strlen(*argv) + 2); | 73 | options = xrealloc(options, optlen + 2 + strlen(*argv) + 2); |
74 | /* Older versions were enclosing space-containing *argv in "", | 74 | /* Spaces handled by "" pairs, but no way of escaping quotes */ |
75 | * but both modprobe and insmod from module-init-tools 3.11.1 | 75 | //TODO: module-init-tools version 3.11.1 quotes only value: |
76 | * don't do this anymore. (As to extra trailing space, | 76 | //it generates var="val with spaces", not "var=val with spaces" |
77 | * insmod adds it but modprobe does not. We do in both cases) | 77 | //(and it won't quote var *name* even if it has spaces) |
78 | */ | 78 | optlen += sprintf(options + optlen, (strchr(*argv, ' ') ? "\"%s\" " : "%s "), *argv); |
79 | optlen += sprintf(options + optlen, "%s ", *argv); | ||
80 | } | 79 | } |
81 | return options; | 80 | return options; |
82 | } | 81 | } |