Fix what I broke in r468.
authorgraham.gower <graham.gower@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>
Mon, 14 Dec 2009 05:58:01 +0000 (05:58 +0000)
committergraham.gower <graham.gower@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>
Mon, 14 Dec 2009 05:58:01 +0000 (05:58 +0000)
git-svn-id: http://opkg.googlecode.com/svn/trunk@492 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358

libopkg/opkg_download.c

index 81ce53d22251d94db3d5fa30126d53b84c8b6aee..fc97d34d8ebbe889de92024a6bd87b46ce1fd03f 100644 (file)
@@ -86,8 +86,6 @@ opkg_download(const char *src, const char *dest_file_name,
     char *src_base = basename(src_basec);
     char *tmp_file_location;
 
-    free(src_basec);
-
     opkg_msg(NOTICE,"Downloading %s.\n", src);
        
     if (str_starts_with(src, "file:")) {
@@ -95,10 +93,12 @@ opkg_download(const char *src, const char *dest_file_name,
        opkg_msg(INFO, "Copying %s to %s...", file_src, dest_file_name);
        err = file_copy(file_src, dest_file_name);
        opkg_msg(INFO, "Done.\n");
+        free(src_basec);
        return err;
     }
 
     sprintf_alloc(&tmp_file_location, "%s/%s", conf->tmp_dir, src_base);
+    free(src_basec);
     err = unlink(tmp_file_location);
     if (err && errno != ENOENT) {
        opkg_perror(ERROR, "Failed to unlink %s", tmp_file_location);