From b25dda737b0b6f64f90b611ef909d065f4d3eee5 Mon Sep 17 00:00:00 2001 From: Paul Barbu Gheorghe Date: Mon, 30 Jul 2012 19:57:43 +0000 Subject: fixed erroneous memory access to newurl in alpm_db_remove_server Signed-off-by: Barbu Paul - Gheorghe Signed-off-by: Allan McRae --- lib/libalpm/db.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'lib/libalpm/db.c') diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c index 1f252abb..fdb7ff9c 100644 --- a/lib/libalpm/db.c +++ b/lib/libalpm/db.c @@ -188,6 +188,7 @@ int SYMEXPORT alpm_db_add_server(alpm_db_t *db, const char *url) int SYMEXPORT alpm_db_remove_server(alpm_db_t *db, const char *url) { char *newurl, *vdata = NULL; + int ret = 1; /* Sanity checks */ ASSERT(db != NULL, return -1); @@ -198,16 +199,18 @@ 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); + 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. */ -- cgit v1.2.3-24-g4f1b