[pacman-dev] [PATCH] fixed erroneous memory access to newurl in alpm_db_remove_server

Barbu Paul - Gheorghe barbu.paul.gheorghe at gmail.com
Mon Jul 30 15:57:43 EDT 2012


Signed-off-by: Barbu Paul - Gheorghe <barbu.paul.gheorghe at gmail.com>
---
 lib/libalpm/db.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c
index bf9c3f0..26b6250 100644
--- a/lib/libalpm/db.c
+++ b/lib/libalpm/db.c
@@ -198,16 +198,20 @@ int SYMEXPORT alpm_db_remove_server(alpm_db_t *db, const char *url)
 	if(!newurl) {
 		return -1;
 	}
+
 	db->servers = alpm_list_remove_str(db->servers, newurl, &vdata);
-	free(newurl);
+
+	int ret = 1;
+
 	if(vdata) {
 		_alpm_log(db->handle, ALPM_LOG_DEBUG, "removed server URL from database '%s': %s\n",
 				db->treename, newurl);
 		free(vdata);
-		return 0;
+		ret = 0;
 	}
 
-	return 1;
+	free(newurl);
+	return ret;
 }
 
 /** Get the name of a package database. */
-- 
Barbu Paul - Gheorghe
Common sense is not so common - Voltaire
Visit My GitHub profile to see my open-source projects - https://github.com/paullik



More information about the pacman-dev mailing list