CTD when findFunction with non-existent class passed indirectly

Is there something that doesn't work right in the latest GZDoom? Post about it here.

Moderator: GZDoom Developers

Forum rules
Please construct and post a simple demo whenever possible for all bug reports. Please provide links to everything.

If you can include a wad demonstrating the problem, please do so. Bug reports that include fully-constructed demos have a much better chance of being investigated in a timely manner than those that don't.

Please make a new topic for every bug. Don't combine multiple bugs into a single topic. Thanks!
User avatar
m8f
 
 
Posts: 1458
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Location: Siberia (UTC+7)
Contact:

CTD when findFunction with non-existent class passed indirectly

Post by m8f »

1. Load this zscript.zs:

Code: Select all

version 4.14.2

class Crash : Zombieman replaces Zombieman
{
  override void beginPlay()
  {
    super.beginPlay();
    string nope = "Nope";
    let f = findFunction(nope, "Nope");
  }
}
2. Start a map with a zombie (e.g. Doom II MAP01).

Expected result: the game is playable. Not detectable before run time, so variable f is NULL.
Actual result:

Code: Select all

*** Fatal Error ***
Address not mapped to object (signal 11)
Address: 0xb8
OS: Debian GNU/Linux 12 (bookworm), Linux 6.12.25+rpt-rpi-v8 on aarch64
GZDoom version g4.14.2

Return to “Bugs [GZDoom]”