Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authormorganamilo <morganamilo@archlinux.org>2020-01-23 06:38:35 +0000
committerAllan McRae <allan@archlinux.org>2020-01-28 10:46:27 +1000
commit0a25548cd0910f66dea2dfab21f75a6d15366d64 (patch)
treea1116877ebd64d3d7bd2695df0de29305d0b2747 /lib
parent21af79860403f9120d2c0412a95ec97d06368e11 (diff)
libalpm: fix alpm_option_set_assumeinstalled
It looks like this function has never actually worked. The current list is never set to NULL after being freed. So the new deps were just appended to the already freed list, leading to a segfault. Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/libalpm/handle.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/libalpm/handle.c b/lib/libalpm/handle.c
index e3193f40..23464045 100644
--- a/lib/libalpm/handle.c
+++ b/lib/libalpm/handle.c
@@ -690,6 +690,7 @@ int SYMEXPORT alpm_option_set_assumeinstalled(alpm_handle_t *handle, alpm_list_t
if(handle->assumeinstalled) {
alpm_list_free_inner(handle->assumeinstalled, (alpm_list_fn_free)alpm_dep_free);
alpm_list_free(handle->assumeinstalled);
+ handle->assumeinstalled = NULL;
}
while(deps) {
if(alpm_option_add_assumeinstalled(handle, deps->data) != 0) {