rpm-software-management/libdnf

valgrind claim: Mismatched free() / delete / delete []

mcrha opened this issue · 1 comments

mcrha commented

While running gnome-software under valgrind, the valgrind claims this:

==3864== Thread 10:
==3864== Mismatched free() / delete / delete []
==3864==    at 0x4848669: operator delete(void*) (vg_replace_malloc.c:923)
==3864==    by 0x1FAE9D80: UnknownInlinedFun (unique_ptr.h:85)
==3864==    by 0x1FAE9D80: UnknownInlinedFun (unique_ptr.h:365)
==3864==    by 0x1FAE9D80: try_to_use_cached_solvfile(char const*, s_Repo*, int, unsigned char const*, _GError**) [clone .lto_priv.0] (dnf-sack.cpp:260)
==3864==    by 0x1FAF0796: UnknownInlinedFun (dnf-sack.cpp:756)
==3864==    by 0x1FAF0796: dnf_sack_load_repo (dnf-sack.cpp:1846)
==3864==    by 0x1FAF169F: dnf_sack_add_repo (dnf-sack.cpp:2285)
==3864==    by 0x1FAF2CE7: dnf_sack_add_repos (dnf-sack.cpp:2339)
==3864==    by 0x1FAF5B66: dnf_context_setup_sack_with_flags (dnf-context.cpp:1827)
==3864==    by 0x1FA4F9C5: gs_rpmostree_ref_dnf_context_locked.constprop.0 (gs-plugin-rpm-ostree.c:995)
==3864==    by 0x1FA53034: gs_rpm_ostree_refine_apps.isra.0 (gs-plugin-rpm-ostree.c:1950)
==3864==    by 0x1FA54080: refine_thread_cb (gs-plugin-rpm-ostree.c:2084)
==3864==    by 0x48BB1E9: work_run_cb (gs-worker-thread.c:236)
==3864==    by 0x4C2346A: g_idle_dispatch (gmain.c:5935)
==3864==    by 0x4C26F4E: UnknownInlinedFun (gmain.c:3417)
==3864==    by 0x4C26F4E: g_main_context_dispatch (gmain.c:4135)
==3864==  Address 0x3232bee0 is 0 bytes inside a block of size 49 alloc'd
==3864==    at 0x484586F: malloc (vg_replace_malloc.c:381)
==3864==    by 0x1FD3046C: solv_malloc (util.c:38)
==3864==    by 0x1FD17A74: solv_read_userdata (repo_solv.c:1549)
==3864==    by 0x1FAE418C: solv_userdata_read(_IO_FILE*) (hy-iutil.cpp:211)
==3864==    by 0x1FAE9D53: try_to_use_cached_solvfile(char const*, s_Repo*, int, unsigned char const*, _GError**) [clone .lto_priv.0] (dnf-sack.cpp:242)
==3864==    by 0x1FAF0796: UnknownInlinedFun (dnf-sack.cpp:756)
==3864==    by 0x1FAF0796: dnf_sack_load_repo (dnf-sack.cpp:1846)
==3864==    by 0x1FAF169F: dnf_sack_add_repo (dnf-sack.cpp:2285)
==3864==    by 0x1FAF2CE7: dnf_sack_add_repos (dnf-sack.cpp:2339)
==3864==    by 0x1FAF5B66: dnf_context_setup_sack_with_flags (dnf-context.cpp:1827)
==3864==    by 0x1FA4F9C5: gs_rpmostree_ref_dnf_context_locked.constprop.0 (gs-plugin-rpm-ostree.c:995)
==3864==    by 0x1FA53034: gs_rpm_ostree_refine_apps.isra.0 (gs-plugin-rpm-ostree.c:1950)
==3864==    by 0x1FA54080: refine_thread_cb (gs-plugin-rpm-ostree.c:2084)

It's with libdnf-0.67.0-2.fc36.x86_64 on a Fedora 36 Silverblue machine.

The issue is resolved by: #1594