summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko2009-05-10 23:41:29 +0200
committerDenys Vlasenko2009-05-10 23:41:29 +0200
commitf427c80d024221f91572ea9d6966f41d51a07319 (patch)
treecdfe38920f9a856e0fef365581c0e0463faf1964
parentc8ab67cad852ec2457adf15bf7883c2f5cdb1b00 (diff)
downloadbusybox-f427c80d024221f91572ea9d6966f41d51a07319.zip
busybox-f427c80d024221f91572ea9d6966f41d51a07319.tar.gz
sysctl: stop abusing parser->line
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--procps/sysctl.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/procps/sysctl.c b/procps/sysctl.c
index d0ff20e..c9063bf 100644
--- a/procps/sysctl.c
+++ b/procps/sysctl.c
@@ -214,11 +214,11 @@ static int sysctl_handle_preload_file(const char *filename)
// (but _whitespace_ from ends should be trimmed first (and we do it right))
//TODO: "var==1" is mishandled (must use "=1" as a value, but uses "1")
while (config_read(parser, token, 2, 2, "# \t=", PARSE_NORMAL)) {
+ char *tp;
sysctl_dots_to_slashes(token[0]);
- /* Save ~4 bytes by using parser internals */
- /* parser->line is big enough for sprintf */
- sprintf(parser->line, "%s=%s", token[0], token[1]);
- sysctl_act_recursive(parser->line);
+ tp = xasprintf("%s=%s", token[0], token[1]);
+ sysctl_act_recursive(tp);
+ free(tp);
}
if (ENABLE_FEATURE_CLEAN_UP)
config_close(parser);