Hi On Mon, Oct 30, 2023 at 5:37 PM Markus Armbruster <arm...@redhat.com> wrote: > > When dump_init()'s check for non-zero @length fails, dump_cleanup() > passes null s->string_table_buf to g_array_unref(), which spews "GLib: > g_array_unref: assertion 'array' failed" to stderr. > > Guard the g_array_unref(). > > Signed-off-by: Markus Armbruster <arm...@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lur...@redhat.com> > --- > dump/dump.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/dump/dump.c b/dump/dump.c > index a1fad17f9c..d8ea364af2 100644 > --- a/dump/dump.c > +++ b/dump/dump.c > @@ -100,7 +100,9 @@ static int dump_cleanup(DumpState *s) > memory_mapping_list_free(&s->list); > close(s->fd); > g_free(s->guest_note); > - g_array_unref(s->string_table_buf); > + if (s->string_table_buf) { > + g_array_unref(s->string_table_buf); > + } or: g_clear_pointer(&s->string_table_buf, g_array_unref) > s->guest_note = NULL; > if (s->resume) { > if (s->detached) { > -- > 2.41.0 >