mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-24 07:46:48 +00:00
opkg: fix invalid free triggered by 011-old-config-location.patch and replace 012-cleanup-tmpdir.patch with upstream fix
SVN-Revision: 18879
This commit is contained in:
parent
c00d5e59f0
commit
51d2ab9308
@ -7,7 +7,7 @@
|
|||||||
-
|
-
|
||||||
+
|
+
|
||||||
+ if(!conf->conf_file)
|
+ if(!conf->conf_file)
|
||||||
+ conf->conf_file = "/etc/opkg.conf";
|
+ conf->conf_file = xstrdup("/etc/opkg.conf");
|
||||||
+
|
+
|
||||||
if (parse_err)
|
if (parse_err)
|
||||||
return parse_err;
|
return parse_err;
|
||||||
|
@ -1,12 +1,35 @@
|
|||||||
--- a/src/opkg-cl.c
|
--- a/src/opkg-cl.c
|
||||||
+++ b/src/opkg-cl.c
|
+++ b/src/opkg-cl.c
|
||||||
@@ -333,6 +333,9 @@
|
@@ -263,7 +263,7 @@
|
||||||
|
int
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
- int opts;
|
||||||
|
+ int opts, err = -1;
|
||||||
|
char *cmd_name;
|
||||||
|
opkg_cmd_t *cmd;
|
||||||
|
int nocheckfordirorfile = 0;
|
||||||
|
@@ -327,15 +327,8 @@
|
||||||
|
usage();
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (opkg_cmd_exec(cmd, argc - opts, (const char **) (argv + opts)))
|
||||||
|
- goto err2;
|
||||||
|
+ err = opkg_cmd_exec(cmd, argc - opts, (const char **) (argv + opts));
|
||||||
|
|
||||||
|
- print_error_list();
|
||||||
|
- free_error_list();
|
||||||
|
-
|
||||||
|
- return 0;
|
||||||
|
-
|
||||||
|
-err2:
|
||||||
|
#ifdef HAVE_CURL
|
||||||
|
opkg_curl_cleanup();
|
||||||
|
#endif
|
||||||
|
@@ -346,5 +339,5 @@
|
||||||
print_error_list();
|
print_error_list();
|
||||||
free_error_list();
|
free_error_list();
|
||||||
|
|
||||||
+ if( conf->tmp_dir )
|
- return -1;
|
||||||
+ rm_r(conf->tmp_dir);
|
+ return err;
|
||||||
+
|
}
|
||||||
return 0;
|
|
||||||
|
|
||||||
err2:
|
|
||||||
|
Loading…
Reference in New Issue
Block a user