summaryrefslogtreecommitdiffstats
path: root/lib/libalpm/diskspace.c
diff options
context:
space:
mode:
authorDave Reisner <dreisner@archlinux.org>2011-09-08 04:22:25 +0200
committerDan McGee <dan@archlinux.org>2011-09-08 21:18:19 +0200
commitdb70c9da153c4767bfd96a15d40e086184bd5402 (patch)
tree550956024d66f72d699143066c69c8ca3b25d73f /lib/libalpm/diskspace.c
parenta03313f3f66e9ac03392cb255bc6c4e1958e14c2 (diff)
downloadpacman-db70c9da153c4767bfd96a15d40e086184bd5402.tar.gz
pacman-db70c9da153c4767bfd96a15d40e086184bd5402.tar.xz
diskspace: fix memory leak on root mount not found
Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'lib/libalpm/diskspace.c')
-rw-r--r--lib/libalpm/diskspace.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libalpm/diskspace.c b/lib/libalpm/diskspace.c
index df414ab9..fe2036d5 100644
--- a/lib/libalpm/diskspace.c
+++ b/lib/libalpm/diskspace.c
@@ -251,7 +251,8 @@ int _alpm_check_diskspace(alpm_handle_t *handle)
if(root_mp == NULL) {
_alpm_log(handle, ALPM_LOG_ERROR, _("could not determine root mount point %s\n"),
handle->root);
- return -1;
+ error = 1;
+ goto finish;
}
replaces = alpm_list_count(trans->remove);
@@ -319,6 +320,7 @@ int _alpm_check_diskspace(alpm_handle_t *handle)
}
}
+finish:
for(i = mount_points; i; i = i->next) {
alpm_mountpoint_t *data = i->data;
FREE(data->mount_dir);