xbps: fix a double free while downloading binpkgs (reported by Hanspolo).
This commit is contained in:
parent
b1dae80cd2
commit
f004e9999a
2 changed files with 37 additions and 1 deletions
|
@ -0,0 +1,35 @@
|
|||
From fb5fb91fa3847ebecd67940bad30f045f5d02dc5 Mon Sep 17 00:00:00 2001
|
||||
From: Juan RP <xtraeme@gmail.com>
|
||||
Date: Tue, 28 Jan 2014 20:51:57 +0100
|
||||
Subject: [PATCH] lib/transaction_commit.c: fix a double free (reported by
|
||||
Hanspolo).
|
||||
|
||||
---
|
||||
lib/transaction_commit.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/transaction_commit.c b/lib/transaction_commit.c
|
||||
index 8c0f8db..8030863 100644
|
||||
--- a/lib/transaction_commit.c
|
||||
+++ b/lib/transaction_commit.c
|
||||
@@ -166,6 +166,7 @@ download_binpkgs(struct xbps_handle *xhp, xbps_object_iterator_t iter)
|
||||
*/
|
||||
sigfile = xbps_xasprintf("%s.sig", file);
|
||||
free(file);
|
||||
+ file = NULL;
|
||||
if (access(sigfile, R_OK) == -1) {
|
||||
xbps_set_cb_state(xhp, XBPS_STATE_DOWNLOAD, 0, pkgver,
|
||||
"Downloading `%s' signature (from `%s')...", pkgver, repoloc);
|
||||
@@ -182,7 +183,8 @@ download_binpkgs(struct xbps_handle *xhp, xbps_object_iterator_t iter)
|
||||
}
|
||||
}
|
||||
free(sigfile);
|
||||
- free(file);
|
||||
+ if (file != NULL)
|
||||
+ free(file);
|
||||
}
|
||||
xbps_object_iterator_reset(iter);
|
||||
|
||||
--
|
||||
1.8.5.3
|
||||
|
|
@ -1,7 +1,8 @@
|
|||
# Template file for 'xbps'
|
||||
pkgname=xbps
|
||||
version=0.30
|
||||
revision=1
|
||||
revision=2
|
||||
patch_args="-Np1"
|
||||
bootstrap=yes
|
||||
conf_files="/etc/xbps/xbps.conf"
|
||||
replaces="xbps>=0"
|
||||
|
|
Loading…
Reference in a new issue