]> wimlib.net Git - wimlib/blobdiff - programs/imagex.c
imagex_export(): Fix memory leak on error path
[wimlib] / programs / imagex.c
index 41aba7ebc2dd5188e7c8def71570563eb8355216..30ffd3740cae2ff2cf554ff5ea874eba5bb273cd 100644 (file)
@@ -1011,7 +1011,7 @@ static int imagex_export(int argc, const char **argv)
 
                ret = file_writable(dest_wimfile);
                if (ret != 0)
-                       return ret;
+                       goto out;
 
                dest_ctype = wimlib_get_compression_type(dest_w);
                if (compression_type_specified
@@ -1787,7 +1787,7 @@ int main(int argc, const char **argv)
                                imagex_error("Exiting with error code %d:\n"
                                             "       %s.", ret,
                                             wimlib_get_error_string(ret));
-                               if (ret == WIMLIB_ERR_NTFS_3G)
+                               if (ret == WIMLIB_ERR_NTFS_3G && errno != 0)
                                        imagex_error_with_errno("errno");
                        }
                        return ret;