https://bugs.kde.org/show_bug.cgi?id=384026
--- Comment #5 from Alvin Wong <alvinhoc...@gmail.com> --- (In reply to Silvio Grosso from comment #4) > Hello Alvin ! > > First off, thanks a lot indeed for your help. > You were right ! > Yesterday, my g'mic path was: > C:/gmic-krita-qt-2.0.3_pre-win64/gmic_krita_qt.exe > G'mic Version was: 2.0.3 170811 > > After your message new path is set by me manually as: > C:/Program Files/Krita (x64)/bin/gmic_krita_qt.exe > > I don't know why Krita 2.3.1 picked up the wrong path because I have > installed it through the x64.exe installer *without* getting a different > version from the G'MIC websit. > My wild guess is that maybe Krita picked up the wrong setting through some > old configuration file still present on my computer (e.g. kritarc etc). That's actually a weakness of the way Krita is handling the gmic-qt configuration... if you have ever set a custom path before in the earlier beta versions it will not be overridden, because use the same configuration entry. > To make it short though the crash is still there even with the new setting > :-( > Here it is the new log crash file on Windows 10 - 64 bit: > https://www.dropbox.com/s/0snontzroktebp5/kritacrash_2.0.4_new_gmic_settings. > txt?dl=0 > > To force this crash it looks like you must close the main G'mic window with > all filters settings and only *afterwards* the secondary window which > informs you that "the option to add a new layer is not implemented yet on > Krita". If you close this secondary window at first most of the time only > G'MIC crashes but Krita 2.3.1 continues working. Thanks for the info, now I can get a crash in Krita but I'm getting a different backtrace than yours... (technical details below) I'm actually getting a slightly different backtrace for the few times I've tried, but they all fail at plugins\extensions\qmic\QMic.cpp:293 (frame #4 in the below backtrace), which I suppose would be due to Krita trying to write a message reply to the closed QLocalSocket (due to gmic-qt being closed early). There are several issues that contributes to this: 1. The gmic-qt plugin does the QLocalSocket IPC on the UI thread (so does Krita, but it's not really relevant here) 2. Krita shows a message box during the IPC (lien 270) and did not send a response before that, which in turn blocked gmic-qt due to #1 3.Since gmic-qt is blocked, Windows will kindly offer to force-close it, and thus the QLocalSocket will be killed 4. Krita tries to send the reply after the message box is dismissed, but the socket is closed so it causes a crash (doesn't really make sense that the write call doesn't check if the socket is closed...) A possible quick fix is to defer the message box to show *after* the IPC is completed (i.e. replyis sent back to gmic-qt and socket is closed normally) #0 0x0000000068975100 in QIODevicePrivate::~QIODevicePrivate() () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #1 0x000000006897731c in QIODevice::write(char const*, long long) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #2 0x000000006896270a in QDataStream::operator<<(int) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #3 0x0000000068962a21 in QDataStream::writeBytes(char const*, unsigned int) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #4 0x000007fe815981f2 in QMic::connected (this=0x168cd5c0) at F:\dev\krita\src_3.2\plugins\extensions\qmic\QMic.cpp:293 #5 0x000007fe815abcf5 in QMic::qt_static_metacall (_o=0x168cd5c0, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at F:/dev/krita/b_mgw54_x64_3.2/build_krita/plugins/extensions/qmic/moc_QMic.cpp:118 #6 0x0000000068a2e3fa in QMetaObject::activate(QObject*, int, int, void**) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #7 0x0000000005156fa3 in QLocalSocket::connectToServer(QFlags<QIODevice::OpenModeFlag>) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Network.dll #8 0x0000000068a2e3fa in QMetaObject::activate(QObject*, int, int, void**) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #9 0x0000000068a96f50 in QWinEventNotifier::activated(void*, QWinEventNotifier::QPrivateSignal) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #10 0x0000000068a5072f in QWinEventNotifier::event(QEvent*) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #11 0x0000000000e2a33c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Widgets.dll #12 0x0000000000e2f6a0 in QApplication::notify(QObject*, QEvent*) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Widgets.dll #13 0x000007feb7d67f86 in KisApplication::notify (this=<optimized out>, receiver=0x310daf50, event=0x22c110) at F:\dev\krita\src_3.2\libs\ui\KisApplication.cpp:543 #14 0x0000000068a0e312 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #15 0x0000000068a5404b in QEventDispatcherWin32Private::activateEventNotifier(QWinEventNotifier*) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #16 0x0000000068a549b1 in QEventDispatcherWin32::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #17 0x000000000715ab55 in qwindows!qt_plugin_instance () from F:\dev\krita\b_mgw54_x64_3.2\install\plugins\platforms\qwindows.dll #18 0x0000000068a0d5ea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #19 0x0000000068a14207 in QCoreApplication::exec() () from F:\dev\krita\b_mgw54_x64_3.2\install\bin\Qt5Core.dll #20 0x0000000140005b87 in main (argc=1, argv=0x6fd05c0) at F:\dev\krita\src_3.2\krita\main.cc:289 -- You are receiving this mail because: You are watching all bug changes.