https://www.doomworld.com/idgames/level ... orts/20hcc
To reproduce, simply use the console and do "map credits" - then look for Gutawer's avatar, and step on the platform underneath it.
This is the avatar to look for:
The expected result (and what previous versions of GZDoom did) is it should activate a ripple shader.
Instead, it VM aborts with a null pointer.
(New Level Refactor) VM Abort on 20 Heretics Credits map
Moderator: GZDoom Developers
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.
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.
- Marisa the Magician
- Posts: 3886
- Joined: Fri Feb 08, 2008 9:15 am
- Preferred Pronouns: She/Her
- Operating System Version (Optional): (btw I use) Arch
- Graphics Processor: nVidia with Vulkan support
- Location: Vigo, Galicia
- Contact:
Re: (New Level Refactor) VM Abort on 20 Heretics Credits map
Looks like Gutawer made the same silly mistake I made in a couple other mods. He's using EventHandler.Find to look for a StaticEventHandler.
Edit: Fixed it. Was just a single line change anyway.
Edit: Fixed it. Was just a single line change anyway.
- Graf Zahl
- Lead GZDoom+Raze Developer
- Posts: 49071
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
Re: (New Level Refactor) VM Abort on 20 Heretics Credits map
Those Find functions were extremely sloppy coding. Why have two when they do the exact same thing with no safeguards present that what they return is correct?
Of course, not checking the return of a function call is also a source of problems.
Of course, not checking the return of a function call is also a source of problems.
Re: (New Level Refactor) VM Abort on 20 Heretics Credits map
It's really not going to bother me that much if this simply becomes incompatible with newer versions of GZDoom. The thing is - this is the released version and I don't really want to update it, at least not to /idgames, at least until Zero X. Diamond finishes his super-super-secret map that he had been working on prior to its release.
If this must stay broken (except for the repository version that Marisa just updated) - so be it.
If this must stay broken (except for the repository version that Marisa just updated) - so be it.
- Graf Zahl
- Lead GZDoom+Raze Developer
- Posts: 49071
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
Re: (New Level Refactor) VM Abort on 20 Heretics Credits map
I think I am just deprecating these functions.
What this needs is a Level.FindEventHandler function and one StaticEventHandler.FindHandler function that exclusively search their respective list, not two functions with different names that both so the same thing, both wrong.
What this needs is a Level.FindEventHandler function and one StaticEventHandler.FindHandler function that exclusively search their respective list, not two functions with different names that both so the same thing, both wrong.
- Major Cooke
- Posts: 8176
- Joined: Sun Jan 28, 2007 3:55 pm
- Preferred Pronouns: He/Him
- Location: QZDoom Maintenance Team
Re: (New Level Refactor) VM Abort on 20 Heretics Credits map
Amusingly, that bug also affects D4D's upgrade cases. No wonder why people aren't getting upgrades whenever they walked over the cases, but I can work around this by having the handler assign itself as a variable at least.