Bug 385226 - Crash on startup if reference image docker is undocked
Summary: Crash on startup if reference image docker is undocked
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (other bugs)
Version First Reported In: 3.3.0
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
: 385233 (view as bug list)
Depends on:
Blocks:
 
Reported: 2017-09-30 09:39 UTC by Alvin Wong
Modified: 2017-09-30 14:32 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alvin Wong 2017-09-30 09:39:29 UTC
krita.exe caused an Access Violation at location 0000000001136B75 in module Qt5Widgets.dll Reading from location 0000000000000098.

AddrPC           Params
0000000001136B75 000000001D103970 0000000000EA6D6F 000000001D430740  Qt5Widgets.dll!QGraphicsItemPrivate::invalidateParentGraphicsEffectsRecursively
000000000113FFA0 000000001D36C760 0000000068A8DCC8 0000000000000000  Qt5Widgets.dll!QGraphicsItem::update
00007FFE6F176F39 000000001D4308C0 000000001D36C760 00000000005FBAB0  kritaimagedocker.dll!slotItemContentChanged  [F:/dev/krita/new/src_3.x/plugins/dockers/imagedocker/image_strip_scene.cpp @ 189]
00007FFE6F179F6F 00000000005FBB08 0000000068A96C30 000000001D344420  kritaimagedocker.dll! ??   [F:/dev/krita/new/build_x64_3.x/build_krita/plugins/dockers/imagedocker/kritaimagedocker_autogen/EWIEGA46WW/moc_image_strip_scene.cpp @ 201]
0000000068AB96CA 0000000068CA5208 00000000005FBC60 0000000068CA5200  Qt5Core.dll!QObject::event
000000000116CFEC 00000000005FFB90 0000000000000000 00000000005FFB90  Qt5Widgets.dll!QGraphicsScene::event
0000000000E97B5C 000000001A416260 000000086B2CA2E8 000000001D357C00  Qt5Widgets.dll!QApplicationPrivate::notify_helper
0000000000E9EDD0 0000000000000000 00000000688B17BF 000000001D34D260  Qt5Widgets.dll!QApplication::notify
00007FFE5DE830E6 0000000000000000 000000001D344420 000000001D1A9BA0  libkritaui.dll!notify  [F:/dev/krita/new/src_3.x/libs/ui/KisApplication.cpp @ 565]
0000000068A8DCC8 0000000000000000 0000000000000000 00000000002C7000  Qt5Core.dll!QCoreApplication::notifyInternal2
0000000068A938C5 000000000036049C 000000000183DE50 0000000000000000  Qt5Core.dll!QCoreApplicationPrivate::sendPostedEvents
000000006A8DE4CE 0000000000000401 000000000036049C 0000000000000000  qwindows.dll!qt_plugin_instance
0000000068AE4A21 0000000080000012 00000000005FC3D0 0000000000000000  Qt5Core.dll!QEventDispatcherWin32Private::sendTimerEvent
00007FFEA230BC50 000000000183DE50 0000000068AE44F0 000000000036049C  USER32.dll!UserCallWinProcCheckWow
00007FFEA230B5CF 00000000005FC490 0000000003267040 00000000005FC490  USER32.dll!DispatchMessageWorker
0000000068AE3D1B 0000000003273DB0 0000000000000000 0000000003268860  Qt5Core.dll!QEventDispatcherWin32::processEvents
000000006A8DE4B5 00000000005FFB90 00000000005FF910 000000000000002D  qwindows.dll!qt_plugin_instance
00007FFE5DE8585B 00000000005FFC00 00000000005FFB90 00000000005FFB40  libkritaui.dll!start  [F:/dev/krita/new/src_3.x/libs/ui/KisApplication.cpp @ 449]
0000000140005C38 0000000000000001 0000000000689E80 000000014045D980  krita.exe!main  [F:/dev/krita/new/src_3.x/krita/main.cc @ 287]
00000001400013F8 0000000000000000 0000000000000000 0000000000000000  krita.exe!0x1000013f8
00000001400014EB 0000000000000000 0000000000000000 0000000000000000  krita.exe!0x1000014eb
00007FFEA15F2774 0000000000000000 0000000000000000 0000000000000000  KERNEL32.DLL!BaseThreadInitThunk
00007FFEA2730D51 0000000000000000 0000000000000000 0000000000000000  ntdll.dll!RtlUserThreadStart
Comment 1 Halla Rempt 2017-09-30 09:41:37 UTC
This also happens on other platforms:

Thread 1 (Thread 0x7f5887254940 (LWP 11711)):
[KCrash Handler]
#6  0x00007f587dba58f5 in QGraphicsItemPrivate::invalidateParentGraphicsEffectsRecursively() () at /usr/lib64/libQt5Widgets.so.5
#7  0x00007f587dbb16c1 in QGraphicsItem::update(QRectF const&) () at /usr/lib64/libQt5Widgets.so.5
#8  0x00007f582a294f0d in ImageStripScene::slotItemContentChanged(ImageItem*) (this=<optimized out>, item=0x16dec500) at /home/boud/dev/krita/plugins/dockers/imagedocker/image_strip_scene.cpp:189
#9  0x00007f582a29812d in ImageStripScene::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /home/boud/dev/b-krita/plugins/dockers/imagedocker/moc_image_strip_scene.cpp:201
#10 0x00007f587c9dd736 in QObject::event(QEvent*) () at /usr/lib64/libQt5Core.so.5
#11 0x00007f587dbe57eb in QGraphicsScene::event(QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#12 0x00007f587d8ecb6c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#13 0x00007f587d8f38c0 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#14 0x00007f5886b74037 in KisApplication::notify(QObject*, QEvent*) (this=<optimized out>, receiver=0x16633ac0, event=0x7f57f4003290) at /home/boud/dev/krita/libs/ui/KisApplication.cpp:587
#15 0x00007f587c9b2935 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#16 0x00007f587c9b4f13 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQt5Core.so.5
#17 0x00007f587ca038f3 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /usr/lib64/libQt5Core.so.5
#18 0x00007f5877da6134 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#19 0x00007f5877da6388 in  () at /usr/lib64/libglib-2.0.so.0
#20 0x00007f5877da642c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#21 0x00007f587ca0311c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#22 0x00007f5886b75550 in KisApplication::start(KisApplicationArguments const&) (this=this@entry=0x7ffcd50aeeb0, args=...) at /home/boud/dev/krita/libs/ui/KisApplication.cpp:468
#23 0x000000000040585e in main(int, char**) (argc=1, argv=<optimized out>) at /home/boud/dev/krita/krita/main.cc:290
Comment 2 Alvin Wong 2017-09-30 13:31:35 UTC
*** Bug 385233 has been marked as a duplicate of this bug. ***
Comment 3 Halla Rempt 2017-09-30 14:32:28 UTC
Git commit 1da27655ce2cce5ebcbab06fb74feb288389fba8 by Boudewijn Rempt.
Committed on 30/09/2017 at 14:31.
Pushed by rempt into branch 'krita/3.3'.

Start the imageloader only when all window events have been handled

This fixes the issue where the reference image docker would crash
Krita on startup if it is undocked.

M  +17   -17   plugins/dockers/imagedocker/image_strip_scene.cpp
M  +15   -13   plugins/dockers/imagedocker/image_strip_scene.h

https://commits.kde.org/krita/1da27655ce2cce5ebcbab06fb74feb288389fba8
Comment 4 Halla Rempt 2017-09-30 14:32:41 UTC
Git commit 268b39ab24e058279df5ff8346611d265cf6f3be by Boudewijn Rempt.
Committed on 30/09/2017 at 14:32.
Pushed by rempt into branch 'master'.

Start the imageloader only when all window events have been handled

This fixes the issue where the reference image docker would crash
Krita on startup if it is undocked.

M  +17   -17   plugins/dockers/imagedocker/image_strip_scene.cpp
M  +15   -13   plugins/dockers/imagedocker/image_strip_scene.h

https://commits.kde.org/krita/268b39ab24e058279df5ff8346611d265cf6f3be