qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] tests: check-qjson: fix a memory leak


From: Eric Blake
Subject: Re: [Qemu-devel] [PATCH] tests: check-qjson: fix a memory leak
Date: Tue, 2 Oct 2018 11:43:31 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.0

On 10/2/18 11:26 AM, Li Qiang wrote:
Spotted by ASAN.

=================================================================
==17531==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 1120 byte(s) in 28 object(s) allocated from:
     #0 0x7f9fb85eeb50 in __interceptor_malloc 
(/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb50)
     #1 0x7f9fb824b8d8 in g_malloc 
(/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x518d8)
     #2 0x5654ae94f073 in qstring_from_str qobject/qstring.c:66
     #3 0x5654ae94ede7 in qstring_new qobject/qstring.c:23
     #4 0x5654ae953b6b in parse_string qobject/json-parser.c:143
     #5 0x5654ae955e3e in parse_literal qobject/json-parser.c:484
     #6 0x5654ae956227 in parse_value qobject/json-parser.c:547
     #7 0x5654ae9565c7 in json_parser_parse qobject/json-parser.c:573
     #8 0x5654ae952d5d in json_message_process_token qobject/json-streamer.c:92
     #9 0x5654ae9608fa in json_lexer_feed_char qobject/json-lexer.c:313
     #10 0x5654ae960ea5 in json_lexer_feed qobject/json-lexer.c:350
     #11 0x5654ae9530de in json_message_parser_feed qobject/json-streamer.c:121
     #12 0x5654ae950b6e in qobject_from_jsonv qobject/qjson.c:69
     #13 0x5654ae950d30 in qobject_from_json qobject/qjson.c:83
     #14 0x5654ae9449af in from_json_str tests/check-qjson.c:30
     #15 0x5654ae946399 in utf8_string tests/check-qjson.c:781
     #16 0x7f9fb826cc39  (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x72c39)

Signed-off-by: Li Qiang <address@hidden>
---
  tests/check-qjson.c | 1 +
  1 file changed, 1 insertion(+)

Latent in commit 6ad8444f6, became a bug in commit c473c379.

Reviewed-by: Eric Blake <address@hidden>


diff --git a/tests/check-qjson.c b/tests/check-qjson.c
index cc13f3d41e..d876a7a96e 100644
--- a/tests/check-qjson.c
+++ b/tests/check-qjson.c
@@ -780,6 +780,7 @@ static void utf8_string(void)
              if (!strstr(json_out, "\\uFFFD")) {
                  str = from_json_str(json_out, j, &error_abort);
                  g_assert_cmpstr(qstring_get_try_str(str), ==, utf8_in);
+                qobject_unref(str);
              }
          }
      }


--
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]