diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2014-09-04 13:33:53 +0100 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2014-09-04 13:33:53 +0100 |
commit | 01eb313907dda97313b8fea62e5632fca64f069c (patch) | |
tree | 16512809a4e1e08b5324d3a5f1e610533f1c32db /numa.c | |
parent | b27e37d4ce4e9951afbb9280bb1416c13f562295 (diff) | |
parent | 70381662aa97b294f3c81a085ed143f37f0ab0cb (diff) | |
download | hqemu-01eb313907dda97313b8fea62e5632fca64f069c.zip hqemu-01eb313907dda97313b8fea62e5632fca64f069c.tar.gz |
Merge remote-tracking branch 'remotes/mjt/tags/trivial-patches-2014-09-03' into staging
trivial patches for 2014-09-03
# gpg: Signature made Wed 03 Sep 2014 06:53:42 BST using RSA key ID A4C3D7DB
# gpg: Good signature from "Michael Tokarev <mjt@tls.msk.ru>"
# gpg: aka "Michael Tokarev <mjt@corpit.ru>"
# gpg: aka "Michael Tokarev <mjt@debian.org>"
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 6EE1 95D1 886E 8FFB 810D 4324 457C E0A0 8044 65C5
# Subkey fingerprint: 6F67 E18E 7C91 C5B1 5514 66A7 BEE5 9D74 A4C3 D7DB
* remotes/mjt/tags/trivial-patches-2014-09-03:
slirp: Honour vlan/stack in hostfwd_remove commands
hmp: fix MemdevList memory leak
qom/object.c, hmp.c: fix string_output_get_string() memory leak
query-memdev: fix potential memory leaks
MAINTAINERS: Add VMWare devices maintainer
device_tree.c: dump all err mesages with error_report
device_tree.c: redirect load_device_tree err message to stderr
scripts: Remove scripts/qtest
Fix debug print warning
curl: The macro that you have to uncomment to get debugging is DEBUG_CURL.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'numa.c')
-rw-r--r-- | numa.c | 15 |
1 files changed, 7 insertions, 8 deletions
@@ -318,10 +318,11 @@ void memory_region_allocate_system_memory(MemoryRegion *mr, Object *owner, static int query_memdev(Object *obj, void *opaque) { MemdevList **list = opaque; + MemdevList *m = NULL; Error *err = NULL; if (object_dynamic_cast(obj, TYPE_MEMORY_BACKEND)) { - MemdevList *m = g_malloc0(sizeof(*m)); + m = g_malloc0(sizeof(*m)); m->value = g_malloc0(sizeof(*m->value)); @@ -369,13 +370,16 @@ static int query_memdev(Object *obj, void *opaque) return 0; error: + g_free(m->value); + g_free(m); + return -1; } MemdevList *qmp_query_memdev(Error **errp) { Object *obj; - MemdevList *list = NULL, *m; + MemdevList *list = NULL; obj = object_resolve_path("/objects", NULL); if (obj == NULL) { @@ -389,11 +393,6 @@ MemdevList *qmp_query_memdev(Error **errp) return list; error: - while (list) { - m = list; - list = list->next; - g_free(m->value); - g_free(m); - } + qapi_free_MemdevList(list); return NULL; } |