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

--- Comment #7 from Dmitry Kazakov <dimul...@gmail.com> ---
Git commit 4f2ceb136cbf90536d3435174359e61db4e28351 by Dmitry Kazakov.
Committed on 29/05/2020 at 15:12.
Pushed by dkazakov into branch 'krita/4.3'.

Make sanity check in CanvasSwitcher less strict

I couldn't reproduce the crash, but the mechanics happens like that:

1) KisCanvas2::setCanvasWidget() adds the canvas to the list of the
   tracked ones and continues loading process.

2) Some other canvas gets activated by spontaneous SetFocus event
   (Note: I haven't managed to reproduce that!)

3) KisMainWindow::addView() registers the canvas at the input manager
   again. But since some other canvas has been activated by a spontaneous
   event, d->canvas is not equal to canvas anymore.

Possible solutions:

Option A:
Remove double registration of the canvas in the input manager and do
it only once either in KisCanvas::setCanvasWidget() or in KisMainWindow

Option B:
Justremove the sanity check. But this way we may miss real bugs that
may happen because of double initialization of the canvas.

M  +7    -2    libs/ui/input/kis_input_manager_p.cpp

https://invent.kde.org/graphics/krita/commit/4f2ceb136cbf90536d3435174359e61db4e28351

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

Reply via email to