hw/cxl: Fix memory leak in error paths
Use g_autofree to free the CXLFixedWindow structure if an error occurs in configuration before we have added to the list (via g_steal_pointer()) Fix Coverity CID: 1488872 Reported-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Message-Id: <20220808122051.14822-2-Jonathan.Cameron@huawei.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
3824e25db1
commit
a99fbb003b
@ -26,7 +26,7 @@ static void cxl_fixed_memory_window_config(CXLState *cxl_state,
|
||||
CXLFixedMemoryWindowOptions *object,
|
||||
Error **errp)
|
||||
{
|
||||
CXLFixedWindow *fw = g_malloc0(sizeof(*fw));
|
||||
g_autofree CXLFixedWindow *fw = g_malloc0(sizeof(*fw));
|
||||
strList *target;
|
||||
int i;
|
||||
|
||||
@ -64,7 +64,8 @@ static void cxl_fixed_memory_window_config(CXLState *cxl_state,
|
||||
fw->enc_int_gran = 0;
|
||||
}
|
||||
|
||||
cxl_state->fixed_windows = g_list_append(cxl_state->fixed_windows, fw);
|
||||
cxl_state->fixed_windows = g_list_append(cxl_state->fixed_windows,
|
||||
g_steal_pointer(&fw));
|
||||
|
||||
return;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user