Recently, I've had GZDoom crash on me a few times when testing my ZScript code in multiplayer. However, it seems that the problem is not related to my code at all, as I've managed to get a crash without any PWADs loaded (except for brightmaps.pk3 and lights.pk3, but I doubt they matter). All I had to do was to run two instances of GZDoom at the same time and connect them to each other. The first instance are passed the following command-line parameters:
Code: Select all
gzdoom -host 2 -nomonsters +deathmatch 1 +sv_cheats 1
The second instance gets the following parameters:
The IWAD used is Doom II. After the connection is established and the actual game begins, I simply close one of the instances. I think it's the server one (as I get the message "Player is the new arbitrator" in the instance that I leave running). When it closes, BOOM - crash.
The place in the code where the crash happens is in
dobjgc.h, line 99:
Spoiler:
Unfortunately, the crash doesn't happen all the time. So far I haven't found out what exactly I have to do to ensure it always happens. I just run the game in the configuration I've described above and exit immediately. Sometimes it crashes, sometimes it does not. The version I'm using for these tests is g3.7pre-263-g45ef7bca4.
Attempting to bisect the repository to find out the commit where the crash was first introduced did not succeed - I could not find a good commit to start from.
This commit is the oldest one I know is affected. Earlier versions either do not run due to script errors, or cannot be compiled outright due to Visual Studio throwing an internal compiler error when compiling zcc_expr.cpp. Even older versions require FMOD and similar stuff, which I don't have on my system.
I can provide a crash report if need be, but I'm not sure a crash report from a self-compiled debug build will be useful. Still, I can provide further feedback on request.
Recently, I've had GZDoom crash on me a few times when testing my ZScript code in multiplayer. However, it seems that the problem is not related to my code at all, as I've managed to get a crash without any PWADs loaded (except for brightmaps.pk3 and lights.pk3, but I doubt they matter). All I had to do was to run two instances of GZDoom at the same time and connect them to each other. The first instance are passed the following command-line parameters:
[code]gzdoom -host 2 -nomonsters +deathmatch 1 +sv_cheats 1[/code]
The second instance gets the following parameters:
[code]gzdoom -join localhost[/code]
The IWAD used is Doom II. After the connection is established and the actual game begins, I simply close one of the instances. I think it's the server one (as I get the message "Player is the new arbitrator" in the instance that I leave running). When it closes, BOOM - crash.
The place in the code where the crash happens is in [url=https://github.com/coelckers/gzdoom/blob/master/src/dobjgc.h#L99]dobjgc.h, line 99[/url]:
[spoiler][imgur]https://imgur.com/zsaSQAa[/imgur][/spoiler]
Unfortunately, the crash doesn't happen all the time. So far I haven't found out what exactly I have to do to ensure it always happens. I just run the game in the configuration I've described above and exit immediately. Sometimes it crashes, sometimes it does not. The version I'm using for these tests is g3.7pre-263-g45ef7bca4.
Attempting to bisect the repository to find out the commit where the crash was first introduced did not succeed - I could not find a good commit to start from. [url=https://github.com/coelckers/gzdoom/commit/9e769f29c33fe6e025e888911ed4020ad2ebc7b3]This commit[/url] is the oldest one I know is affected. Earlier versions either do not run due to script errors, or cannot be compiled outright due to Visual Studio throwing an internal compiler error when compiling zcc_expr.cpp. Even older versions require FMOD and similar stuff, which I don't have on my system.
I can provide a crash report if need be, but I'm not sure a crash report from a self-compiled debug build will be useful. Still, I can provide further feedback on request.