https://bugs.kde.org/show_bug.cgi?id=526455

Kirill <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|BACKTRACE                   |---
             Status|NEEDSINFO                   |REPORTED

--- Comment #2 from Kirill <[email protected]> ---
I found the retained core dump for the exact CLI invocation (spectacle -b -r -o
/tmp/spectacle-test.png), PID 22566, generated on 2026-09-30 at 13:27:41 MSK.
Below are the backtraces for all threads reported by coredumpctl info 22566.

Thread 22566 (crashing main thread):
#0 __pthread_kill_implementation (libc.so.6 + 0xa0974)
#1 raise (libc.so.6 + 0x433c6)
#2 KCrash::defaultCrashHandler (libKF6Crash.so.6 + 0x8e96)
#3 __restore_rt (libc.so.6 + 0x43510)
#4 __pthread_kill_implementation (libc.so.6 + 0xa0974)
#5 raise (libc.so.6 + 0x433c6)
#6 abort (libc.so.6 + 0x2952d)
#7 __libc_message_impl.cold (libc.so.6 + 0x2a589)
#8 malloc_printerr (libc.so.6 + 0xabe1e)
#9 malloc_printerr_tail (libc.so.6 + 0xabe41)
#10 tesseract::ADAPT_CLASS_STRUCT::~ADAPT_CLASS_STRUCT (libtesseract.so.5.0.5 +
0x1b772d)
#11 tesseract::ADAPT_TEMPLATES_STRUCT::~ADAPT_TEMPLATES_STRUCT
(libtesseract.so.5.0.5 + 0x1bcdcf)
#12 tesseract::Classify::EndAdaptiveClassifier (libtesseract.so.5.0.5 +
0x1bd122)
#13 tesseract::Wordrec::program_editdown (libtesseract.so.5.0.5 + 0x2c737d)
#14 tesseract::Wordrec::end_recog (libtesseract.so.5.0.5 + 0x2c73bd)
#15 tesseract::Tesseract::~Tesseract (libtesseract.so.5.0.5 + 0x13de00)
#16 tesseract::TessBaseAPI::End (libtesseract.so.5.0.5 + 0xbcf20)
#17 n/a (spectacle + 0xb1e2d)
#18 n/a (spectacle + 0xb2162)
#19 QObjectPrivate::deleteChildren (libQt6Core.so.6 + 0x24abba)
#20 QObject::~QObject (libQt6Core.so.6 + 0x24fadb)
#21 n/a (spectacle + 0x81c16)
#22 __libc_start_call_main (libc.so.6 + 0x2b53e)
#23 __libc_start_main (libc.so.6 + 0x2b66b)
#24 n/a (spectacle + 0x83315)

Thread 22568:
#0 __syscall_cancel_arch (libc.so.6 + 0xa7992)
#1 __internal_syscall_cancel (libc.so.6 + 0x9ab58)
#2 __GI___futex_abstimed_wait_cancelable64 (libc.so.6 + 0x9af53)
#3 pthread_cond_wait (libc.so.6 + 0x9dcc0)
#4 QWaitCondition::wait (libQt6Core.so.6 + 0x3beaeb)
#5 n/a (libQt6WaylandClient.so.6 + 0xa2e4f)
#6 n/a (libQt6Core.so.6 + 0x3bcd7d)
#7 start_thread (libc.so.6 + 0x9e86e)
#8 __clone3 (libc.so.6 + 0x1281ec)

Thread 22567:
#0 __syscall_cancel_arch (libc.so.6 + 0xa7992)
#1 __internal_syscall_cancel (libc.so.6 + 0x9ab58)
#2 __syscall_cancel (libc.so.6 + 0x9abb1)
#3 ppoll (libc.so.6 + 0x118d72)
#4 n/a (libglib-2.0.so.0 + 0x691da)
#5 g_main_context_iteration (libglib-2.0.so.0 + 0x699c0)
#6 QEventDispatcherGlib::processEvents (libQt6Core.so.6 + 0x4e50e8)
#7 QEventLoop::exec (libQt6Core.so.6 + 0x1f82d3)
#8 QThread::exec (libQt6Core.so.6 + 0x31baed)
#9 n/a (libQt6DBus.so.6 + 0x48068)
#10 n/a (libQt6Core.so.6 + 0x3bcd7d)
#11 start_thread (libc.so.6 + 0x9e86e)
#12 __clone3 (libc.so.6 + 0x1281ec)

Thread 22569:
#0 __syscall_cancel_arch (libc.so.6 + 0xa7992)
#1 __internal_syscall_cancel (libc.so.6 + 0x9ab58)
#2 __syscall_cancel (libc.so.6 + 0x9abb1)
#3 __poll (libc.so.6 + 0x1185ea)
#4 n/a (libQt6WaylandClient.so.6 + 0xa2eb3)
#5 n/a (libQt6Core.so.6 + 0x3bcd7d)
#6 start_thread (libc.so.6 + 0x9e86e)
#7 __clone3 (libc.so.6 + 0x1281ec)

Thread 22576:
#0 __syscall_cancel_arch (libc.so.6 + 0xa7992)
#1 __internal_syscall_cancel (libc.so.6 + 0x9ab58)
#2 __GI___futex_abstimed_wait_cancelable64 (libc.so.6 + 0x9af53)
#3 pthread_cond_wait (libc.so.6 + 0x9dcc0)
#4 n/a (libgallium-26.2.3.so + 0x6f0eed)
#5 n/a (libgallium-26.2.3.so + 0x6a503c)
#6 n/a (libgallium-26.2.3.so + 0x6f0e2b)
#7 start_thread (libc.so.6 + 0x9e86e)
#8 __clone3 (libc.so.6 + 0x1281ec)

Thread 22575:
#0 __syscall_cancel_arch (libc.so.6 + 0xa7992)
#1 __internal_syscall_cancel (libc.so.6 + 0x9ab58)
#2 __GI___futex_abstimed_wait_cancelable64 (libc.so.6 + 0x9af53)
#3 pthread_cond_wait (libc.so.6 + 0x9dcc0)
#4 n/a (libgallium-26.2.3.so + 0x6f0eed)
#5 n/a (libgallium-26.2.3.so + 0x6a503c)
#6 n/a (libgallium-26.2.3.so + 0x6f0e2b)
#7 start_thread (libc.so.6 + 0x9e86e)
#8 __clone3 (libc.so.6 + 0x1281ec)

The main-thread trace shows an invalid free during Tesseract cleanup, called
from Spectacle's TessBaseAPI::End path. Spectacle's own frames are unresolved
(shown as n/a). This core was generated before downgrading libtesseract5 and
tesseract-ocr; those packages are now at 5.5.3-1.1 and the same CLI command no
longer reproduces the crash. I could not obtain source-level symbols for the
exact Tesseract library in the core because its build ID differs from the
currently installed library.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to