When I close ddcui (by clicking the close button on the window border) after having switched to the "Features" view I get one of these errors in the terminal (which one varies from run to run):
double free or corruption (!prev)
double free or corruption (out)
free(): double free detected in tcache 2
Analysing the core dump in gdb gives me the following stack (it seems I don't have debug symbols for ddcui itself, but I'm willing to try to rebuild it if you have issues reproducing the issue):
(gdb) bt
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1 0x00007faf0309a363 in __pthread_kill_internal (threadid=<optimized out>, signo=6) at pthread_kill.c:89
#2 0x00007faf0303e7d0 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3 0x00007faf03025681 in __GI_abort () at abort.c:77
#4 0x00007faf03026700 in __libc_message_impl (vma_name=vma_name@entry=0x7faf031b4891 "glibc: fatal", fmt=fmt@entry=0x7faf031b7e92 "%s\n") at ../sysdeps/posix/libc_fatal.c:138
#5 0x00007faf030a47cc in __libc_message_wrapper (vmaname=0x7faf031b4891 "glibc: fatal", fmt=0x7faf031b7e92 "%s\n") at ../include/stdio.h:203
#6 malloc_printerr (str=str@entry=0x7faf031ba888 "double free or corruption (out)") at malloc.c:5341
#7 0x00007faf030a6240 in _int_free_merge_chunk (av=0x7faf03213ac0 <main_arena>, p=0x7faec4003dc0, size=224) at malloc.c:4420
#8 0x00007faf030a6344 in _int_free_chunk (av=0x7faf03213ac0 <main_arena>, p=<optimized out>, size=<optimized out>, have_lock=<optimized out>, have_lock@entry=0) at malloc.c:4368
#9 0x00007faf030a9156 in __GI___libc_free (mem=<optimized out>) at malloc.c:3374
#10 0x00007faf04a2aacb in free_ddca_feature_metadata (metadata=0x7faec4003830) at base/feature_metadata.c:648
#11 ddca_free_feature_metadata (metadata=0x7faec4003830) at libmain/api_metadata.c:672
#12 0x0000557ee53f3070 in ?? ()
#13 0x0000557ee5401a6b in ?? ()
#14 0x0000557ee5401d95 in ?? ()
#15 0x00007faf039dfdba in QObjectPrivate::deleteChildren (this=this@entry=0x557eec847dc0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:2279
#16 0x00007faf04d4dca1 in QWidget::~QWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qwidget.cpp:1581
#17 0x0000557ee5400bc7 in ?? ()
#18 0x00007faf039dfdba in QObjectPrivate::deleteChildren (this=this@entry=0x557eec7c2460) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:2279
#19 0x00007faf04d4dca1 in QWidget::~QWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qwidget.cpp:1581
#20 0x0000557ee5400d28 in ?? ()
#21 0x00007faf039dfdba in QObjectPrivate::deleteChildren (this=this@entry=0x557eeccb57a0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:2279
#22 0x00007faf04d4dca1 in QWidget::~QWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qwidget.cpp:1581
#23 0x00007faf04d4de25 in QWidget::~QWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qwidget.cpp:1608
#24 0x00007faf039dfdba in QObjectPrivate::deleteChildren (this=this@entry=0x557eecc020e0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:2279
#25 0x00007faf04d4dca1 in QWidget::~QWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qwidget.cpp:1581
#26 0x0000557ee5400f3a in ?? ()
#27 0x00007faf039dfdba in QObjectPrivate::deleteChildren (this=this@entry=0x557eec877e80) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:2279
#28 0x00007faf04d4dca1 in QWidget::~QWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qwidget.cpp:1581
#29 0x00007faf04dcb639 in QFrame::~QFrame (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/widgets/qframe.cpp:236
#30 QFrame::~QFrame (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/widgets/qframe.cpp:236
#31 0x00007faf039dfdba in QObjectPrivate::deleteChildren (this=this@entry=0x557eeccee8e0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:2279
#32 0x00007faf04d4dca1 in QWidget::~QWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qwidget.cpp:1581
#33 0x00007faf04f6cb39 in QFrame::~QFrame (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/widgets/qframe.cpp:236
#34 QStackedWidget::~QStackedWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/widgets/qstackedwidget.cpp:127
#35 QStackedWidget::~QStackedWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/widgets/qstackedwidget.cpp:127
#36 0x00007faf039dfdba in QObjectPrivate::deleteChildren (this=this@entry=0x557eeccfa190) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:2279
#37 0x00007faf04d4dca1 in QWidget::~QWidget (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qwidget.cpp:1581
#38 0x0000557ee53e41b2 in ?? ()
#39 0x00007faf03027741 in __libc_start_call_main (main=main@entry=0x557ee53e2720, argc=argc@entry=1, argv=argv@entry=0x7ffc7db2b5c8) at ../sysdeps/nptl/libc_start_call_main.h:59
#40 0x00007faf03027879 in __libc_start_main_impl (main=0x557ee53e2720, argc=1, argv=0x7ffc7db2b5c8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
stack_end=0x7ffc7db2b5b8) at ../csu/libc-start.c:360
#41 0x0000557ee53e6275 in ?? ()
When I close ddcui (by clicking the close button on the window border) after having switched to the "Features" view I get one of these errors in the terminal (which one varies from run to run):
Analysing the core dump in gdb gives me the following stack (it seems I don't have debug symbols for ddcui itself, but I'm willing to try to rebuild it if you have issues reproducing the issue):
Steps to reproduce
Versions