From: Michal Privoznik Date: Thu, 23 May 2013 13:40:42 +0000 (+0200) Subject: virNWFilterHashTablePut: Free the correct variable X-Git-Tag: v1.0.6-rc1~32 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e3d1f6aa7c4272d4b2f4d2061952f216ddb50d8e;p=thirdparty%2Flibvirt.git virNWFilterHashTablePut: Free the correct variable In bf1fe848 I've introduced 'newName' variable to substitute the old 'const char *name' as previously we had an ugly code there: name = strdup(name); However, some parts of the function were not updated, so they were still calling VIR_FREE(name) instead of VIR_FREE(newName). --- diff --git a/src/conf/nwfilter_params.c b/src/conf/nwfilter_params.c index ac5f7ed794..48b89b7ffd 100644 --- a/src/conf/nwfilter_params.c +++ b/src/conf/nwfilter_params.c @@ -647,13 +647,13 @@ virNWFilterHashTablePut(virNWFilterHashTablePtr table, int copyName) { if (!virHashLookup(table->hashTable, name)) { + char *newName; if (copyName) { - char *newName; if (VIR_STRDUP(newName, name) < 0) return -1; if (VIR_REALLOC_N(table->names, table->nNames + 1) < 0) { - VIR_FREE(name); + VIR_FREE(newName); return -1; } table->names[table->nNames++] = newName; @@ -661,7 +661,7 @@ virNWFilterHashTablePut(virNWFilterHashTablePtr table, if (virHashAddEntry(table->hashTable, name, val) < 0) { if (copyName) { - VIR_FREE(name); + VIR_FREE(newName); table->nNames--; } return -1;