0000640: Frozen status in GZDoom 3.0

Forum rules
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.

Post a reply

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :geek: :ugeek: :!: :?: :idea: :arrow: :| :mrgreen: :3: :wub: >:( :blergh:
View more smilies

BBCode is OFF
Smilies are ON

Topic review
   

Expand view Topic review: 0000640: Frozen status in GZDoom 3.0

Re: 0000640: Frozen status in GZDoom 3.0

by _mental_ » Tue May 02, 2017 3:55 am

Reported the issue to libsndfile developers here.

Re: 0000640: Frozen status in GZDoom 3.0

by _mental_ » Mon May 01, 2017 2:25 am

I doubt that the problem is with the library itself rather than with a compiler was used to buil it.
Like I said there is no issue with DLL I built with MSVC.

To report a bug some minimal sample is needed, we can't just say: build GZDoom with VS2015 in Release.

Re: 0000640: Frozen status in GZDoom 3.0

by Graf Zahl » Mon May 01, 2017 2:19 am

_mental_ wrote: The question is how do we proceed with libsndfile for minor release?

If the library is the source of the problem it needs to be replaced. I also think the bug needs to be reported to its creator, this is a serious issue that could render it worthless.
For the time being I am putting back the old version into the binary distribution.

The main question is: Does this work for 64 bit due to the far stricter stack alignment requirements or just by random luck?

Re: 0000640: Frozen status in GZDoom 3.0

by Rachael » Sun Apr 30, 2017 9:54 pm

Both solutions sound good to me - so it's whatever you think is best.

Re: 0000640: Frozen status in GZDoom 3.0

by _mental_ » Sun Apr 30, 2017 9:37 pm

After some thinking about this issue I came with conclusion that the best way to solve it is to rebuild all dependencies with MSVC.
I can do this myself if needed.
Alternatively, I can create Git repository with source code of all libraries we are using with configured VS projects/solutions and batch file to build them all.

Re: 0000640: Frozen status in GZDoom 3.0

by _mental_ » Sun Apr 30, 2017 7:05 pm

Even after my fix I've got the same unaligned access in Debug Win32 build.
Apparently something is really wrong with libsndfile.

UPDATE: I built libsndfile from master branch using MSVC. Release DLL works fine with all GZDoom configurations. Most likely 1.0.28 was compiled with MinGW which is guilty of breaking alignment in stack.

The question is how do we proceed with libsndfile for minor release?

Re: 0000640: Frozen status in GZDoom 3.0

by Graf Zahl » Sun Apr 30, 2017 7:05 pm

Such a requirement should never be made part of an ABI.

Re: 0000640: Frozen status in GZDoom 3.0

by _mental_ » Sun Apr 30, 2017 7:05 pm

Fixed in 8a36bf5

Hard to say who is responsible for this fault, our code or libsndfile.
If SSE optimization was explicitly enabled during compilation of DLL, I guess we need to do proper buffer alignment.

In any case, it was quite easy to fix on our side.

Re: 0000640: Frozen status in GZDoom 3.0

by Graf Zahl » Sun Apr 30, 2017 7:05 pm

I'm off for the entire day so I cannot test myself right now.
Can you retest this with the DLL from the 2.4 release? That's an older one.
This probably needs to be reported to the libsndfile developer if it can be confirmed to be a library related error.

Re: 0000640: Frozen status in GZDoom 3.0

by _mental_ » Sun Apr 30, 2017 7:04 pm

Released 32-bit build crashes inside libsndfile-1.dll.

Re: 0000640: Frozen status in GZDoom 3.0

by YukiHerz » Sun Apr 30, 2017 7:04 pm

After some testing, I've come to the conclusion that the crash may be related to the sound played during quake effects, specifically their FLAC format, making the secret sound play by entering a secret sector or crossing a secret line also crashed the game for me, but it didn't when I added a custom DSSECRET via an external pk3, in WAV format.

Re: 0000640: Frozen status in GZDoom 3.0

by leodoom85 » Sun Apr 30, 2017 7:04 pm

Also, any value for the intensity, radius and tremor, even at minimum, the game will freeze no matter what.

Re: 0000640: Frozen status in GZDoom 3.0

by Enjay » Sun Apr 30, 2017 7:04 pm

I can get this too. It is just the 32 bit version though. The 64 bit version seems to work just fine.

0000640: Frozen status in GZDoom 3.0

by leodoom85 » Sun Apr 30, 2017 7:03 pm

https://mantis.zdoom.org/view.php?id=640

Code: Select all

Summary	0000640: Frozen status in GZDoom 3.0
Description	Activating a switch with a Radius_Quake action in GZDoom 3.0 32-bit version, the game will froze everytime. Tested on the 20 Monsters Challenge megawad, maps 25 and 38.
Steps To Reproduce	-Drag and load this provided wad in GZDoom.
-Select the Doom 2 Iwad.
-Press the switch in front of you.
-The game will froze because of the Radius_Quake action.
Additional Information	-Use the 32-bit stable version of GZDoom 3.0.0
https://mantis.zdoom.org/file_download. ... 4&type=bug

Top