On Wed, Jan 25, 2017 at 12:26:24AM +0100, Matteo Bruni wrote:
2017-01-23 16:26 GMT+01:00 Rafał Mużyło galtgendo@gmail.com:
- err:ntdll:RtlpWaitForCriticalSection wait timed out in thread <nr>, blocked by <nr>, retrying (60 sec): this is an annoyance, sometimes a major one; namely, it happens that I terminate an app by pressing ^C; usually, that works just fine, but every now and then app goes into that unterminatable state and not for those 60 sec (which is horribly long anyway), but pretty much indefinitelly; it really shouldn't do that; this requires a taskmgr or wineboot intervention to close it
You shouldn't terminate applications like that. You might catch the application in the middle of "something", inside some locked section or similar. There is no way for Wine to fix things afterwards in general.
Oh, really ???... The thing is I've seen that happen on closing main app window or even standard app exit. Granted, it's quite rare, still...
My point is that when that happens, subsequent ^C has no effect. Would it be possible to (for example) add a generic SIGINT handler to wine sever, so that upon receiving ^C from its terminal the Windows app would go into the standard forced shutdown cycle (that is the one hung apps go upon Windows shutdown) instead of this repeated 60 sec. wait ?
As for the regedit patch, it's more of a question, than an answer. I've simply took a few lines from another place in wine (can't recall which anymore), then started thinking out loud. The end result feels a bit messy, even if it solved the problem for me. If you consider it good enough, :shrug: fine by me.