So I've run into this issue more than once with Kate, and it's very frustrating. I've been testing a program that requires me to disable the internet connection on my computer. I run the program with the network card disabled, and then I re-enable it and run the program again. During this time Kate is open and I have text files in it that are open on the network. The issue isn't instantaneous, it does take a while before Kate will crash. Initially I just thought it was a once-off but it happened regularly enough during my program test that I had to save the files I needed on the desktop (I lost some rough notes that weren't saved during the crash too). I appreciate that this is an edge-case but Kate should at least handle this scenario gracefully as network outages can occur. Ideally if the network connection drops, it shouldn't bother Kate until a save is attempted at which point Kate should tell the user the network is down and give them the chance to save locally. I know that Kate does make temporary saves, maybe that's the trigger for this? STEPS TO REPRODUCE 1. Create a text file on a network share, or network drive 2. Open it with Kate 3. Disable your network card 4. (You may need to make saves prior to disabling, I'm not sure the exact process, but it does happen) 5. Do some other work and wait for Kate to crash OBSERVED RESULT If left alone, Kate will eventually crash EXPECTED RESULT The network being down shouldn't affect Kate at all SOFTWARE/OS VERSIONS Windows: 10
Is it possible for you to get a stack trace of the crash?
Marking as waiting for infor
Unfortunately, I don't have the time to look into that. I mentioned that I'm currently working on a project and I can't get sidetracked.
I just did a bit of testing there, the problem is consistent. Open the file on the network, disable the network and click into Kate. It crashes every time. I wanted to try and save the file once the network was disabled but Kate is crashing when you click into it (with a network file open and the network disabled). Given that the bug is easy to reproduce and consistent, a stack trace from me isn't required at all.
> a stack trace from me isn't required at all. Its always helpful and needed. No matter how easy/hard the bug seems to reproduce. There are a thousand factors at play here. This bug doesn't occur on linux which makes this tricky and we dont have people who actively work on windows problems. That is why I asked for a stacktrace.
Still needs a backtrace
Fair enough, can you provide any links to do a stacktrace for Kate on Windows?
easiest way is to install windbg from Microsoft and start the debug nightmake in it.
nightly Kate versions available here: https://kate-editor.org/get-it/
๐๐งน โ ๏ธ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME. For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging. Thank you for helping us make KDE software even better for everyone!
๐๐งน This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME.
reopening as obtaining a backtrace is non trivial for a non technical user
> reopening as obtaining a backtrace is non trivial for a non technical user Unfortunately, I still don't have free time to follow this up. I'm still interested in a fix, and it's on my todo list... and I'll get to it, but a bot janny sweeping bugs from reporters within 15 days is hilarious. The developers aren't held to this standard, but reporters have to respond after 15 days? The developers are volunteers along with the bug reporters, but you want to put us on a deadline? Either do the same for developers or why should anyone report? Fuck this deadline shit. I'm eyeballs deep in other stuff at the minute, I'll get around to it when I have spare time. "WORKSFORME" is probably the worst concept ever devised and will drive people away from even reporting. I've only seen this 'WORKSFORME' occur recently, which is pure bollocks. It goes from 'NEEDSINFO', to no info provided, and then suddenly to "WORKSFORME". How does that even make sense? A bug is provided, no info for 30 days and then suddenly "WORKSFORME", yeah, brilliant. I'll get back to you when I find the time, put a deadline on it and I'm fucking out.
I agree that sometimes that bot is not helpful, but even if it closes the bug, you can still provide the info whenever you like and just re-open it. That is close to zero extra effort. Without automation like this, we will just be swamped with stuff.
Can reproduce the crash in my VM if I do share a local folder, mount that as some drive, open a file there and then disconnect the mapped drive.
My backtraces are not that useful, first hints could point to the file system watching.
Yes, no longer crashes if I start Kate with set KDIRWATCH_METHOD=Stat to avoid we use the QFileSystemWatcher case in KDirWatch.
Reading the KDirWatch code it seems to be rather an issue in QFileSystemWatcher. Perhaps I am able to get some usable backtrace, let's see.
Qt Creator uses QFileSystemWatcher, too, and doesn't crash in that situation (and reacts on the 'file in gone' change correctly).
Looking at how KDirWatch works, we could run into https://bugreports.qt.io/browse/QTBUG-64171
(In reply to Christoph Cullmann from comment #20) > Looking at how KDirWatch works, we could run into > > https://bugreports.qt.io/browse/QTBUG-64171 Ok, that got fixed it seems :) I always fail to see that in the Jira lists.
Fast command line output in Kate before the crash is: QFileSystemWatcher: FindNextChangeNotification failed for "Y:\etc" (An unexpected network error occurred.) qt.core.filesystemwatcher: file changed "Y:/etc/CraftSettings.ini" removed? true watching? true
That is the full backtrace I get: Thread 1 (Thread 10004.0x1a84): #0 0x00007ffe6a3c99c1 in WideCharToMultiByte () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #1 0x00007ffdfa3ece5e in Qt6Core!?convertFromUnicode_sys@QLocal8Bit@@SA?AVQByteArray@@VQStringView@@IPEAUState@QStringConverterBase@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #2 0x00007ffdfa3eaa02 in Qt6Core!?convertFromUtf8@QAbstractConcatenable@@KAXVQByteArrayView@@AEAPEAVQChar@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3 0x00007ffdfa3e01e0 in Qt6Core!?properties@QUnicodeTables@@YAPEBUProperties@1@_U@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #4 0x00007ffdfa3e7b0d in Qt6Core!?toLocal8Bit_helper@QString@@CA?AVQByteArray@@PEBVQChar@@_J@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #5 0x00007ffdfa28dd26 in Qt6Core!?encodeName@QFile@@SA?AVQByteArray@@AEBVQString@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #6 0x00007ffdfd2c8881 in KF6CoreAddons!?setProgramLogo@KAboutData@@QEAAAEAV1@AEBVQVariant@@@Z () from C:\CraftRoot\bin\KF6CoreAddons.dll No symbol table info available. #7 0x00007ffdfd2d4e91 in KF6CoreAddons!?setProgramLogo@KAboutData@@QEAAAEAV1@AEBVQVariant@@@Z () from C:\CraftRoot\bin\KF6CoreAddons.dll ..... here we have just xxxx KF6CoreAddons!?setProgramLogo@KAboutData@@QEAAAEAV1@AEBVQVariant@@@Z () from C:\CraftRoot\bin\KF6CoreAddons.dll No symbol table info available. #3926 0x00007ffdfd2ce868 in KF6CoreAddons!?setProgramLogo@KAboutData@@QEAAAEAV1@AEBVQVariant@@@Z () from C:\CraftRoot\bin\KF6CoreAddons.dll No symbol table info available. #3927 0x00007ffdfa34c67f in Qt6Core!?qt_static_metacall@QObject@@CAXPEAV1@W4Call@QMetaObject@@HPEAPEAX@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3928 0x00007ffdfa34f154 in Qt6Core!?activate@QMetaObject@@SAXPEAVQObject@@PEBU1@HPEAPEAX@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3929 0x00007ffdfa4de5ef in Qt6Core!?fileChanged@QFileSystemWatcher@@QEAAXAEBVQString@@UQPrivateSignal@1@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3930 0x00007ffdfa4de758 in Qt6Core!?files@QFileSystemWatcher@@QEBA?AV?$QList@VQString@@@@XZ () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3931 0x00007ffdfa34c67f in Qt6Core!?qt_static_metacall@QObject@@CAXPEAV1@W4Call@QMetaObject@@HPEAPEAX@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3932 0x00007ffdfa34f154 in Qt6Core!?activate@QMetaObject@@SAXPEAVQObject@@PEBU1@HPEAPEAX@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3933 0x00007ffdfa4dc285 in Qt6Core!?stateName@QDateTimeParser@@IEBA?AVQString@@W4State@1@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3934 0x00007ffdfa3584e9 in Qt6Core!?placeMetaCall@QMetaCallEvent@@UEAAXPEAVQObject@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3935 0x00007ffdfa35634f in Qt6Core!?event@QObject@@UEAA_NPEAVQEvent@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3936 0x00007ffdfaed32e7 in Qt6Widgets!?notify_helper@QApplicationPrivate@@QEAA_NPEAVQObject@@PEAVQEvent@@@Z () from C:\CraftRoot\bin\Qt6Widgets.dll No symbol table info available. #3937 0x00007ffdfaed2435 in Qt6Widgets!?notify@QApplication@@UEAA_NPEAVQObject@@PEAVQEvent@@@Z () from C:\CraftRoot\bin\Qt6Widgets.dll No symbol table info available. #3938 0x00007ffdfa30f0ef in Qt6Core!?notifyInternal2@QCoreApplication@@CA_NPEAVQObject@@PEAVQEvent@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3939 0x00007ffdfa31176e in Qt6Core!?sendPostedEvents@QCoreApplicationPrivate@@SAXPEAVQObject@@HPEAVQThreadData@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3940 0x00007ffdfab5d65f in Qt6Gui!?sendPostedEvents@QWindowsGuiEventDispatcher@@UEAAXXZ () from C:\CraftRoot\bin\Qt6Gui.dll No symbol table info available. #3941 0x00007ffdfa48ece9 in Qt6Core!?processEvents@QEventDispatcherWin32@@UEAA_NV?$QFlags@W4ProcessEventsFlag@QEventLoop@@@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3942 0x00007ffdfab5d5d9 in Qt6Gui!?processEvents@QWindowsGuiEventDispatcher@@UEAA_NV?$QFlags@W4ProcessEventsFlag@QEventLoop@@@@@Z () from C:\CraftRoot\bin\Qt6Gui.dll No symbol table info available. #3943 0x00007ffdfa315984 in Qt6Core!?exec@QEventLoop@@QEAAHV?$QFlags@W4ProcessEventsFlag@QEventLoop@@@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3944 0x00007ffdfa30d5d2 in Qt6Core!?exec@QCoreApplication@@SAHXZ () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3945 0x00007ff7fb2ca3f6 in ?? () No symbol table info available. #3946 0x00007ff7fb2cd420 in ?? () No symbol table info available. #3947 0x00007ff7fb2cc192 in ?? () No symbol table info available. #3948 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #3949 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #3950 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 2 (Thread 10004.0x15cc): #0 0x00007ffe6d146564 in ntdll!ZwWaitForWorkViaWorkerFactory () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6d07259e in ntdll!RtlAcquireSRWLockExclusive () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #2 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #3 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #4 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 3 (Thread 10004.0x2824): #0 0x00007ffe6d146564 in ntdll!ZwWaitForWorkViaWorkerFactory () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6d07259e in ntdll!RtlAcquireSRWLockExclusive () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #2 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #3 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #4 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 4 (Thread 10004.0x2ec): #0 0x00007ffe6d146564 in ntdll!ZwWaitForWorkViaWorkerFactory () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6d07259e in ntdll!RtlAcquireSRWLockExclusive () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #2 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #3 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #4 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 5 (Thread 10004.0x2e18): #0 0x00007ffe6d146564 in ntdll!ZwWaitForWorkViaWorkerFactory () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6d07259e in ntdll!RtlAcquireSRWLockExclusive () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #2 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #3 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #4 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 6 (Thread 10004.0x189c): #0 0x00007ffe6d146564 in ntdll!ZwWaitForWorkViaWorkerFactory () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6d07259e in ntdll!RtlAcquireSRWLockExclusive () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #2 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #3 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #4 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 7 (Thread 10004.0x1f20): #0 0x00007ffe6d143404 in ntdll!ZwWaitForMultipleObjects () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6a40df43 in WaitForMultipleObjectsEx () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #2 0x00007ffe6a40de11 in WaitForMultipleObjects () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #3 0x00007ffdfa4eb3d6 in Qt6Core!?tr@QFileSystemWatcher@@SA?AVQString@@PEBD0H@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #4 0x00007ffdfa495dce in Qt6Core!?start@QThread@@QEAAXW4Priority@1@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #5 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #6 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #7 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 8 (Thread 10004.0x1a10): #0 0x00007ffe6d143404 in ntdll!ZwWaitForMultipleObjects () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6a40df43 in WaitForMultipleObjectsEx () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #2 0x00007ffe6b917f1e in combase!DllGetClassObject () from C:\WINDOWS\System32\combase.dll No symbol table info available. #3 0x00007ffe6b9fe361 in combase!RoParameterizedTypeExtraGetTypeSignature () from C:\WINDOWS\System32\combase.dll No symbol table info available. #4 0x00007ffe6b9fe219 in combase!RoParameterizedTypeExtraGetTypeSignature () from C:\WINDOWS\System32\combase.dll No symbol table info available. #5 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #6 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #7 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 9 (Thread 10004.0x1304): #0 0x00007ffe6d146564 in ntdll!ZwWaitForWorkViaWorkerFactory () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6d07259e in ntdll!RtlAcquireSRWLockExclusive () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #2 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #3 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #4 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 10 (Thread 10004.0x1d34): #0 0x00007ffe6d146564 in ntdll!ZwWaitForWorkViaWorkerFactory () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6d07259e in ntdll!RtlAcquireSRWLockExclusive () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #2 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #3 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #4 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 11 (Thread 10004.0x10e0): #0 0x00007ffe6d142934 in ntdll!ZwWaitForSingleObject () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6a40cbbf in WaitForSingleObjectEx () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #2 0x00007ffdfa47932d in Qt6Core!?wait@QWaitCondition@@QEAA_NPEAVQMutex@@VQDeadlineTimer@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3 0x00007ffdfa49a422 in Qt6Core!?reset@QThreadPoolPrivate@@QEAAXXZ () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #4 0x00007ffdfa495dce in Qt6Core!?start@QThread@@QEAAXW4Priority@1@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #5 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #6 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #7 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 12 (Thread 10004.0x16a8): #0 0x00007ffe6d142934 in ntdll!ZwWaitForSingleObject () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6a40cbbf in WaitForSingleObjectEx () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #2 0x00007ffdfa47932d in Qt6Core!?wait@QWaitCondition@@QEAA_NPEAVQMutex@@VQDeadlineTimer@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3 0x00007ffdfa49a422 in Qt6Core!?reset@QThreadPoolPrivate@@QEAAXXZ () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #4 0x00007ffdfa495dce in Qt6Core!?start@QThread@@QEAAXW4Priority@1@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #5 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #6 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #7 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 13 (Thread 10004.0xbc0): #0 0x00007ffe6d143404 in ntdll!ZwWaitForMultipleObjects () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe33bfff66 in joySetThreshold () from C:\WINDOWS\SYSTEM32\winmm.dll No symbol table info available. #2 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #3 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #4 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 14 (Thread 10004.0x23c8): #0 0x00007ffe6d142934 in ntdll!ZwWaitForSingleObject () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6a40cbbf in WaitForSingleObjectEx () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #2 0x00007ffdfa47932d in Qt6Core!?wait@QWaitCondition@@QEAA_NPEAVQMutex@@VQDeadlineTimer@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3 0x00007ffdfa49a422 in Qt6Core!?reset@QThreadPoolPrivate@@QEAAXXZ () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #4 0x00007ffdfa495dce in Qt6Core!?start@QThread@@QEAAXW4Priority@1@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #5 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #6 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #7 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 15 (Thread 10004.0x54c): #0 0x00007ffe6d142934 in ntdll!ZwWaitForSingleObject () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6a40cbbf in WaitForSingleObjectEx () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #2 0x00007ffdfa47932d in Qt6Core!?wait@QWaitCondition@@QEAA_NPEAVQMutex@@VQDeadlineTimer@@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #3 0x00007ffdfa49a422 in Qt6Core!?reset@QThreadPoolPrivate@@QEAAXXZ () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #4 0x00007ffdfa495dce in Qt6Core!?start@QThread@@QEAAXW4Priority@1@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #5 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #6 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #7 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 16 (Thread 10004.0x27d8): #0 0x00007ffe6d143404 in ntdll!ZwWaitForMultipleObjects () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6a40df43 in WaitForMultipleObjectsEx () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #2 0x00007ffe6a40de11 in WaitForMultipleObjects () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #3 0x00007ffdfa4eb3d6 in Qt6Core!?tr@QFileSystemWatcher@@SA?AVQString@@PEBD0H@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #4 0x00007ffdfa495dce in Qt6Core!?start@QThread@@QEAAXW4Priority@1@@Z () from C:\CraftRoot\bin\Qt6Core.dll No symbol table info available. #5 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #6 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #7 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 17 (Thread 10004.0x2740): #0 0x00007ffe6d143404 in ntdll!ZwWaitForMultipleObjects () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6a40df43 in WaitForMultipleObjectsEx () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #2 0x00007ffe6b9fe5ee in combase!RoParameterizedTypeExtraGetTypeSignature () from C:\WINDOWS\System32\combase.dll No symbol table info available. #3 0x00007ffe6b9fe426 in combase!RoParameterizedTypeExtraGetTypeSignature () from C:\WINDOWS\System32\combase.dll No symbol table info available. #4 0x00007ffe6b9fe219 in combase!RoParameterizedTypeExtraGetTypeSignature () from C:\WINDOWS\System32\combase.dll No symbol table info available. #5 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #6 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #7 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 18 (Thread 10004.0x454): #0 0x00007ffe6d143404 in ntdll!ZwWaitForMultipleObjects () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #1 0x00007ffe6a40df43 in WaitForMultipleObjectsEx () from C:\WINDOWS\System32\KernelBase.dll No symbol table info available. #2 0x00007ffe30d2b20d in msspellcheckingfacility!DllGetClassObject () from C:\Windows\System32\MsSpellCheckingFacility.dll No symbol table info available. #3 0x00007ffe30d2b162 in msspellcheckingfacility!DllGetClassObject () from C:\Windows\System32\MsSpellCheckingFacility.dll No symbol table info available. #4 0x00007ffe6b6de8d7 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll No symbol table info available. #5 0x00007ffe6d01c34c in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll No symbol table info available. #6 0x0000000000000000 in ?? () No symbol table info available. Backtrace stopped: previous frame inner to this frame (corrupt stack?)
I assume the setProgramLogo is just corrupt, but it looks like we do some more or less unlimited recursion on the file changed event.
bool KDirWatchPrivate::useQFSWatch(Entry *e) { e->m_mode = QFSWatchMode; e->dirty = false; if (e->m_status == NonExistent) { addEntry(nullptr, e->parentDirectory(), e, true /*isDir*/); return true; } we recurse here. Y: itself is not there, and e->parentDirectory() aka QDir::cleanPath(path + QLatin1String("/..")); will just keep returning Y:
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kcoreaddons/-/merge_requests/517
Did more debugging and testing, did need a bit more intrusive patching.
Git commit 54da24a3512705a9374c1e61aab34c70259a34d9 by Christoph Cullmann. Committed on 29/07/2025 at 15:42. Pushed by cullmann into branch 'master'. fix crash/stack overflow on drive removal on Windows on e.g. Windows we can end up with a removed drive Y: parentDirectory() will then lead to infinite Y:/.. Y:/../.. and Co. chains introduce isRoot to not go up if we are at some root already add test that this is true for a drive letter fix parentDirectory() to use QFileInfo(path).absolutePath() to avoid Y:/../.. that will not be detected as root M +25 -4 autotests/kdirwatch_unittest.cpp M +37 -16 src/lib/io/kdirwatch.cpp M +5 -0 src/lib/io/kdirwatch_p.h https://invent.kde.org/frameworks/kcoreaddons/-/commit/54da24a3512705a9374c1e61aab34c70259a34d9
Should be fixed in the nightly: https://cdn.kde.org/ci-builds/utilities/kate/master/windows/