stonesense
stonesense copied to clipboard
Crashes on resize
@lethosor adds: see duplicates for some more details:
- https://github.com/DFHack/stonesense/issues/69#issue-614550227
I move the window to my second monitor and resize it (approx 1800x1300, on 1440p monitor) by dragging the border. It promptly crashes DF. Same for maximise.
Faulting application name: Dwarf Fortress.exe, version: 0.0.0.0, time stamp: 0x54ad7e66
Faulting module name: MSVCR100.dll, version: 10.0.30319.1, time stamp: 0x4ba1dbbe
Exception code: 0xc0000005
Fault offset: 0x00010aac
Faulting process id: 0x1894
Faulting application start time: 0x01d09c6cd39617e4
Faulting application path: R:\DWARFF~1\DWARFF~2\Dwarf Fortress 0.40.24\Dwarf Fortress.exe
Faulting module path: R:\DWARFF~1\DWARFF~2\Dwarf Fortress 0.40.24\MSVCR100.dll
Report Id: a57230fe-0861-11e5-91e7-94de806f3893
DF 40.24 DF Hack 40.24 r3
I tried incrementally increasing the size to catch the limitation
backbuffer w, h: 1300, 845
backbuffer w, h: 1390, 902
backbuffer w, h: 1424, 921
backbuffer w, h: 1440, 932
backbuffer w, h: 1459, 943
Then crashed. Another time I crashed at approx. 880x1100 (guess).
First-chance exception at 0x554990DD (stonesense.plug.dll) in Dwarf Fortress.exe: 0xC0000005: Access violation reading location 0x0000000C.
Unhandled exception at 0x554990DD (stonesense.plug.dll) in Dwarf Fortress.exe: 0xC0000005: Access violation reading location 0x0000000C.
Are the debug symbols anywhere?
stonesense.plug.dll!554990dd() Unknown
[Frames below may be incorrect and/or missing, no symbols loaded for stonesense.plug.dll]
stonesense.plug.dll!55483860() Unknown
stonesense.plug.dll!55473f75() Unknown
stonesense.plug.dll!5549910c() Unknown
stonesense.plug.dll!55486c60() Unknown
stonesense.plug.dll!5548787b() Unknown
stonesense.plug.dll!55547242() Unknown
stonesense.plug.dll!5549495d() Unknown
stonesense.plug.dll!554a68e0() Unknown
554990B0 push ebp
554990B1 mov ebp,esp
554990B3 sub esp,14h
554990B6 mov eax,dword ptr ds:[55584720h]
554990BB xor eax,ebp
554990BD mov dword ptr [ebp-4],eax
554990C0 mov eax,dword ptr [ebp+8]
554990C3 mov ecx,dword ptr [ebp+0Ch]
554990C6 mov edx,dword ptr [ebp+10h]
554990C9 mov dword ptr [ebp-14h],eax
554990CC mov eax,dword ptr [ebp+14h]
554990CF mov dword ptr [ebp-10h],ecx
554990D2 mov dword ptr [ebp-0Ch],edx
554990D5 mov dword ptr [ebp-8],eax
554990D8 call 55493890
554990DD test byte ptr [eax+0Ch],1 <----- exception
eax = 0 0C = 12
Note; it crashes even if on the primary monitor. It's only the resizing that causes it.
I get this crash as well, but I have no idea what causes it, but I'm sure it's related to having Stonesense and Dwarf Fortress sharing memory together. If that's the case, the fix is not trivial at all.
Can confirm that this still occurs, I'm using the Windows LNP 0.43.03-r06. Pretty easy to reproduce, I try and resize stonesense and it crashes.
I'm also observing this on Mac OS X with a recent LNP (running DF 0.43.x I believe).
Observed on Win10 (DF 0.43.05). Resizing to half screen does not crash, but full screen (1080p) does. Embarking or loading a save while stonesense is maximized (from a previous fortress) similarly crashes immediately.
Same crash on macOS 10.13.1, DFHack 0.43.05-r2, attempting to resize the small window stonesize draws:
[DFHack]# stonesense
Stonesense launched
Using allegro version 5.2.2 r1
backbuffer w, h: 3360, 2100
backbuffer w, h: 3360, 2100
[DFHack]# /Users/alex/bin/dfhack: line 15: 51965 Segmentation fault: 11 DYLD_INSERT_LIBRARIES=./hack/libdfhack.dylib ./dwarfort.exe "$@"
Any resize immediately crashes my df, mac os 10.12.6
Same issue on Windows 10 with DFHack 0.43.03
We're not going to fix any issues with older DF versions, particularly ones as old as 0.43.03.
@lethosor As a matter of fact after updating to 0.44.12 the issue is gone - resizing doesn't crash, so I think you can close the issue as fixed.
Note that there haven't been any significant changes to Stonesense in a while, particularly in 2018, so it's possible that this is still an issue. If this does occur in 0.44.12+, feel free to let us know, but I can't guarantee that it'll be fixed, because not many people are familiar enough with Stonesense to figure out why this could occur.
Still happens to me .
Win10-1803, DF v0.44.12, DF-Hack version 0.44.12-r1
Mainly happens when I double click title bar or try to maximize by WIN+Up Arrow
Still happens to me to. Mac os 10.14.3 DF v0.44.12 DF-hack version 0.44.12-r2
Same, still happens to me.
Win10, DF v0.44.12 DF-hack version 0.44.12-r2
How has this not been fixed it's happening to me as well.
@helloguysmaster
How has this not been fixed ...
Please be friendlier. This is a free project. Someone needs to be able to reliably reproduce this issue – and they might not have access to the same hardware, or the same version of DF, DFHack, etc.. And then someone needs to spend their own time – and possibly a considerable amount too – actually investigating the problem, it's likely causes, and what might possibly be done or changed to mitigate or prevent the crashes. That's potentially a LOT of work, and there's little hope of anyone being paid for it, so there's a real opportunity cost – not just in potential paid work not done, but everything else that anyone could be doing instead (including playing DF).
This is also an open source project. Everyone has access to the source code. So you personally should have access to all of the tools and resources you might need to fix this yourself. I'd suggest starting by compiling and building DFHack – according to the DF wiki page for Stonesense:
Stonesense is one of the many DFHack plugins. It comes with DFHack's source code, and if you manage to compile DFHack, then you've managed to compile Stonesense.
Yes, you might need to learn C++; at least enough to read the code and identify, first, where in the code these crashes occur. Yes, that might be a LOT of work – much more than others that already know C++, let alone know DFHack or Stonesense (to any degree).
But still, how have YOU not fixed this already? You wrote that these crashes are happening to you too so why do you not seem to care enough to actually pitch in and help fix them for at least yourself?
It's totally understandable why you haven't done anything. It's almost certainly a LOT of work. And I sympathize with your frustration. But please don't imply that someone has failed to meet an obligation they never made, to you personally or anyone else, to ensure that a free program works forever, perfectly, with every version of DF and DFHack, and on every hardware platform on which DF runs (which is several).
But flippant remarks like "How has this not been fixed" have a real cost on the people that do try and are trying to provide others with awesome free software – don't discourage them and their work by implying that they're failing to meet a standard to which they never agreed. Instead – please – be gracious and grateful for all of the hard work they've already done for both your benefit and everyone else's too.
Same, Win10, DF v0.44.12 DF-hack version 0.44.12-r2 Using 2 monitors, crashes on both. Found out, that bug happened only after launching the game. After a few game ticks the "limit" size of the window grows up to whole screen. If df paused from start any resizing crash the game.
Same issue here, 0.47.05-r11. Two monitors. Stonesense crashes dwarf fortress on maximize only, works at any dragged size.
No mitigating factors such as game state tethered to crash events.
DFHack version 50.08-r1 (release) on x86_64 Game Version: Dwarf Fortress v50.08 (Steam)
Still happens on newer versions.
Found a workaround. For StoneSense to not crash, open it through DfHack before you start your game. You will be able to resize and move it as much as you want. Afterwards, it shouldn't crash when resizing it after opening a save.