Loading package/busybox/busybox-1.14.0-mdev.patch +1 −13 Original line number Diff line number Diff line --- busybox-1.14.0/util-linux/mdev.c Tue Apr 14 23:23:04 2009 +++ busybox-1.14.0-mdev/util-linux/mdev.c Sat May 2 16:31:34 2009 +++ busybox-1.14.0-mdev/util-linux/mdev.c Mon May 4 19:58:47 2009 @@ -181,7 +181,8 @@ * the rest of fields unless keep_matching == 1 */ Loading @@ -10,15 +10,3 @@ /* 3rd field: mode - device permissions */ mode = strtoul(tokens[2], NULL, 8); @@ -524,7 +525,10 @@ make_device(temp, 1); } else if (strcmp(action, "add") == 0) { - make_device(temp, 0); + /* N.B. make_device() mangles the device path, so save it */ + char *s = xstrdup(temp); + make_device(s, 0); + free(s); if (ENABLE_FEATURE_MDEV_LOAD_FIRMWARE) { if (fw) load_firmware(fw, temp); package/busybox/busybox-1.14.0-sysctl.patch 0 → 100644 +18 −0 Original line number Diff line number Diff line --- busybox-1.14.0/procps/sysctl.c Tue Apr 14 01:43:09 2009 +++ busybox-1.14.0-sysctl/procps/sysctl.c Sun May 10 23:40:52 2009 @@ -214,11 +214,11 @@ // (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); Loading
package/busybox/busybox-1.14.0-mdev.patch +1 −13 Original line number Diff line number Diff line --- busybox-1.14.0/util-linux/mdev.c Tue Apr 14 23:23:04 2009 +++ busybox-1.14.0-mdev/util-linux/mdev.c Sat May 2 16:31:34 2009 +++ busybox-1.14.0-mdev/util-linux/mdev.c Mon May 4 19:58:47 2009 @@ -181,7 +181,8 @@ * the rest of fields unless keep_matching == 1 */ Loading @@ -10,15 +10,3 @@ /* 3rd field: mode - device permissions */ mode = strtoul(tokens[2], NULL, 8); @@ -524,7 +525,10 @@ make_device(temp, 1); } else if (strcmp(action, "add") == 0) { - make_device(temp, 0); + /* N.B. make_device() mangles the device path, so save it */ + char *s = xstrdup(temp); + make_device(s, 0); + free(s); if (ENABLE_FEATURE_MDEV_LOAD_FIRMWARE) { if (fw) load_firmware(fw, temp);
package/busybox/busybox-1.14.0-sysctl.patch 0 → 100644 +18 −0 Original line number Diff line number Diff line --- busybox-1.14.0/procps/sysctl.c Tue Apr 14 01:43:09 2009 +++ busybox-1.14.0-sysctl/procps/sysctl.c Sun May 10 23:40:52 2009 @@ -214,11 +214,11 @@ // (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);