Jean-Marc Lasgouttes wrote: > Angus> ... well? Did it do the trick? > No, it did not change anything. > I attach the backtrace I get when breaking on the second > ShowStatus.
It looks to me like this signal is entirely within the Qt event loop machinery, no? No wonder it's driving you nuts. > #0 lyx::frontend::ControlSpellchecker::showSummary (this=0x88337a8) > at src/frontends/controllers/ControlSpellchecker.C:277 > #1 0x0853382e in lyx::frontend::ControlSpellchecker::check > (this=0x88337a8) at > src/frontends/controllers/ControlSpellchecker.C:214 > #2 0x08407c34 in lyx::frontend::QSpellchecker::ignore > (this=0x881a850) at src/frontends/qt2/QSpellchecker.C:68 Why not try and kill the signal off at it's root? I know this is a hack, but it might also be a start to a solution. void QSpellcheckerDialog::ignoreClicked() { + if (form_->isVisible()) form_->ignore(); } > #3 0x0843ff44 in lyx::frontend::QSpellcheckerDialog::ignoreClicked > (this=0xb7596dac) at src/frontends/qt2/QSpellcheckerDialog.C:52 -- Angus