[LyX/master] Meet per-document spelling dictionaries (fixes #86 [sic!])

Stephan Witt st.witt at gmx.net
Mon Mar 8 10:14:13 UTC 2021


Am 08.03.2021 um 07:27 schrieb Jürgen Spitzmüller <spitz at lyx.org>:
> 
> Am Sonntag, dem 07.03.2021 um 20:55 +0100 schrieb Stephan Witt:
>> To reproduce I
>> 
>> 1. Open the Help -> Intro.
>> 2. Boom.
> 
> Is it related to the darkmode runtime switch we recently added? You
> backtrace points towards that code region.
> 
> In any case, you can try bisecting.

I did it already. But I’m lost now. Bisect points to my commit 07122f066b.
I don’t see the reason and reversion of this is not easy. 
If I revert it manually it doesn’t help. The crash remains.

Any idea how to get the cause? It looks like some uninitialized memory.

To reproduce I

1. Start LyX
2. Disable on-the-fly spell-checker
3. Load the Intro
4. Start spell-checker and stop in GuiApplication.cpp at line 2941 (first line of the exception handler for "exception const & e") - the crash
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 4.1
  * frame #0: 0x000000010350967a LyX`lyx::frontend::GuiApplication::notify(this=0x00006040000788d0, receiver=0x0000604000378790, event=0x00006080005635a0) at GuiApplication.cpp:2941:3
    frame #1: 0x000000010d3d0b44 QtCore`QCoreApplication::notifyInternal2(QObject*, QEvent*) + 212
    frame #2: 0x000000010d3d1c56 QtCore`QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 774
(lldb) print e
(const lyx::support::ExceptionMessage) $0 = (type_ = 1413567809, title_ = L"\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffdÉ\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd蒃\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd\U0000fffd", details_ = L""..., message_ = ""...)

The constructor of lyx::support::ExceptionMessage is not used for the object e.

It makes no difference to use cmake or autotools.

Stephan


More information about the lyx-devel mailing list