diff mbox series

[PATCH-for-5.2,v2] hw/rx/rx-gdbsim: Fix memory leak

Message ID 20201030134918.1518930-1-f4bug@amsat.org (mailing list archive)
State New, archived
Headers show
Series [PATCH-for-5.2,v2] hw/rx/rx-gdbsim: Fix memory leak | expand

Commit Message

Philippe Mathieu-Daudé Oct. 30, 2020, 1:49 p.m. UTC
As load_device_tree() returns allocated memory,
we need to free it.

Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Fixes: bda19d7bb56 ("hw/rx: Add RX GDB simulator")
Reported-by: Coverity (CID 1432307: RESOURCE_LEAK)
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
v2: NULL-initialize (Richard)
---
 hw/rx/rx-gdbsim.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Richard Henderson Oct. 30, 2020, 6:49 p.m. UTC | #1
On 10/30/20 6:49 AM, Philippe Mathieu-Daudé wrote:
> As load_device_tree() returns allocated memory,
> we need to free it.
> 
> Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
> Fixes: bda19d7bb56 ("hw/rx: Add RX GDB simulator")
> Reported-by: Coverity (CID 1432307: RESOURCE_LEAK)
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> v2: NULL-initialize (Richard)
> ---
>  hw/rx/rx-gdbsim.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/hw/rx/rx-gdbsim.c b/hw/rx/rx-gdbsim.c
> index 417ec0564b3..d70865962e8 100644
> --- a/hw/rx/rx-gdbsim.c
> +++ b/hw/rx/rx-gdbsim.c
> @@ -122,7 +122,7 @@ static void rx_gdbsim_init(MachineState *machine)
>          if (dtb_filename) {
>              ram_addr_t dtb_offset;
>              int dtb_size;
> -            void *dtb;
> +            g_autofree void *dtb = NULL;
>  
>              dtb = load_device_tree(dtb_filename, &dtb_size);

What I said was, merge the declaration and statement:

  g_autofree void *dtb =
    load_device_tree(...);

but whatever.  You can still keep my previous conditional r-b.

r~
diff mbox series

Patch

diff --git a/hw/rx/rx-gdbsim.c b/hw/rx/rx-gdbsim.c
index 417ec0564b3..d70865962e8 100644
--- a/hw/rx/rx-gdbsim.c
+++ b/hw/rx/rx-gdbsim.c
@@ -122,7 +122,7 @@  static void rx_gdbsim_init(MachineState *machine)
         if (dtb_filename) {
             ram_addr_t dtb_offset;
             int dtb_size;
-            void *dtb;
+            g_autofree void *dtb = NULL;
 
             dtb = load_device_tree(dtb_filename, &dtb_size);
             if (dtb == NULL) {