Page 1 of 2

[r1249] Release compile of zdoom doesn't run

Posted: Sat Sep 27, 2008 7:27 pm
by Macil
On my 64-bit ubuntu system, if I start up a release compile of zdoom, I get this: (It asks for the iwad, but crashes after that)
Spoiler:
But if I start my debug compile of zdoom, it runs fine. (A little detail I just remembered - its not exactly a Release compile but its a "MinSizeRel" compile set through cmake. This has always worked for me, until this issue came up a few revisions or so ago.)

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Sep 28, 2008 1:20 am
by Graf Zahl
Unfortunately, since I can't reproduce this you will have to help me out. The functions causing the crash are listed so if you could put in some debug output to see what actor definition is passing the incorrect data it would help a lot.

Re: [r1249] Release compile of zdoom doesn't run

Posted: Fri Oct 03, 2008 7:50 pm
by Macil
(Talking about r1250)
If I comment out line 708 (delete[] namestart;) on p_states.cpp, zdoom no longer crashes, so it has something to do with that - guess somewhere else in the code tries to also free the same variable.

Looking at the code, I see no use for the namestart variable. I would just remove it, but I'm curious to what this means:

Code: Select all

char *namestart = name;
Does this mean namestart is a pointer to name? Or that name is a pointer to the value pointed to by name? Or that its the same as name?

And what does using delete[] do to it? Delete just the pointer that namestart is, or the data associated with it (making 'name' also deleted)? If its the latter, then I'd assume the code expects name to be deleted and I can't just remove the two lines of code from p_states.cpp referencing namestart.


I also added in a line of code before line 708:

Code: Select all

printf("In class %s, namestart=%s\n",type->TypeName.GetChars(),namestart);
Here's the relevant output from the release version, which crashes immediately following this output:
Spoiler:
Here's the similar from the debug build, which as is apparent, continues on and starts the game fine:
Spoiler:
EDIT:
Apparently for some reason in release mode, ResolveGotoLabels decides to parse through the PoisonBolt actor, when it shouldn't be. Commenting the line that defines namestart and the line that deletes it stops it from crashing, but not fixing the problem that it is mistakenly parsing PoisonBolt. It then parses through PoisonBolt again (with name set to nothing, or no visible characters at least), then continues as normal. PoisonBolt is the only actor it parses through mistakenly - all others look correct.
In Debug mode, PoisonBolt is not parsed at all. Looking into this still.

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sat Oct 04, 2008 12:16 am
by Macil
Argh... I've set up a few commands in the ResolveGotoLabels function that trigger only when its parsing "PoisonBolt", as I ironically can't really use a debugger to debug this.

When in debug mode, which I assumed was correct, I get
list[0].DefineFlags=5
list[1].DefineFlags=32
list[2].DefineFlags=32
list[3].DefineFlags=5
which seems to work fine. But in release mode I get
list[0].DefineFlags=5
list[1].DefineFlags=4
list[2].DefineFlags=4
list[3].DefineFlags=5
And SDF_LABEL=4, which means the ResolveGotoLabels function passes list items 1 and 2 to ResolveGotoLabel, which isn't supposed to happen. What is the point of DefineFlags? I assumed it was to store one of 6 values (SDF_*) defined from thingdef.h, but a lot of actors have DefineFlags set to a lot higher, commonly 96. (Also, there's a misspelling on line 62 of thingdef.h of an E that should be F, not that it affects anything.)

I've checked the two parts of the code that set certain DefineFlags to SDF_LABEL - PoisonBolt's list items don't have it set there, but all other list items with SDF_LABEL set have it set there.

I'm now attempting to search where DefineFlags is set and work from that direction now.

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sat Oct 04, 2008 1:36 am
by Graf Zahl
Looks like an uninitialized variable. This is going to be fun... :(


The best place to start is to debug ParseStates for the PoisonBolt actor.

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 10:23 am
by Chris
Valgrind gives me this:

Code: Select all

LoadDecorations: Load external actors.
==4176==
==4176== Thread 1:
==4176== Conditional jump or move depends on uninitialised value(s)
==4176==    at 0x822A08E: FStateDefinitions::ResolveGotoLabels(FActorInfo*, AActor*, TArray<FStateDefine, FStateDefine>&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x822A392: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839BB0B: FinishActor(FScanner&, FActorInfo*, Baggage&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839002D: ParseActor(FScanner&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839B9CD: ParseDecorate(FScanner&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839B8B2: ParseDecorate(FScanner&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839BA50: LoadDecorations() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x8191CAD: FActorInfo::StaticInit() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x815CA79: D_DoomMain() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x812C722: main (in /home/kitty/zdoom/build/src/zdoom)
==4176==
==4176== Conditional jump or move depends on uninitialised value(s)
==4176==    at 0x822A08E: FStateDefinitions::ResolveGotoLabels(FActorInfo*, AActor*, TArray<FStateDefine, FStateDefine>&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x822A15C: FStateDefinitions::ResolveGotoLabels(FActorInfo*, AActor*, TArray<FStateDefine, FStateDefine>&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x822A392: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839BB0B: FinishActor(FScanner&, FActorInfo*, Baggage&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839002D: ParseActor(FScanner&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839B9CD: ParseDecorate(FScanner&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839B8B2: ParseDecorate(FScanner&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839BA50: LoadDecorations() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x8191CAD: FActorInfo::StaticInit() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x815CA79: D_DoomMain() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x812C722: main (in /home/kitty/zdoom/build/src/zdoom)
==4176==
==4176== Conditional jump or move depends on uninitialised value(s)
==4176==    at 0x40236E3: strcpy (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==4176==    by 0x8191D5D: GetSpriteIndex(char const*) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839E8C1: Handler_crouchsprite_S_PlayerPawn(APlayerPawn*, Baggage&, FPropParam*) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839C346: ParsePropertyParams(FScanner&, FPropertyInfo*, AActor*, Baggage&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839C666: ParseActorProperty(FScanner&, Baggage&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x838FFA6: ParseActor(FScanner&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839B9CD: ParseDecorate(FScanner&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839B8B2: ParseDecorate(FScanner&) (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x839BA50: LoadDecorations() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x8191CAD: FActorInfo::StaticInit() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x815CA79: D_DoomMain() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x812C722: main (in /home/kitty/zdoom/build/src/zdoom)
R_Init: Init Doom refresh subsystem.
DecalLibrary: Load decals.
M_Init: Init miscellaneous info.
P_Init: Init Playloop state.
==4176==
==4176== Use of uninitialised value of size 4
==4176==    at 0x826CBB6: R_InitSpriteDefs() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x826CEA5: R_InitSprites() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x8214E47: P_Init() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x815CDFF: D_DoomMain() (in /home/kitty/zdoom/build/src/zdoom)
==4176==    by 0x812C722: main (in /home/kitty/zdoom/build/src/zdoom)

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 10:46 am
by Graf Zahl
Too bad that the dump doesn't tell me anything I don't know yet. Was that a 32 bit or 64 bit compile?

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 10:49 am
by Chris
32-bit. I'll try to see if I can rebuild zdoom with more debug info..

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 11:01 am
by Graf Zahl
Can you test what happens if you replace this function:

Code: Select all

void FStateDefinitions::FixStatePointers (FActorInfo *actor, TArray<FStateDefine> & list)
{
	for(unsigned i=0;i<list.Size(); i++)
	{
		if (list[i].DefineFlags == SDF_INDEX)
		{
			size_t v=(size_t)list[i].State;
			list[i].State = actor->OwnedStates + v - 1;
			list[i].DefineFlags = SDF_STATE;
		}
		if (list[i].Children.Size() > 0) FixStatePointers(actor, list[i].Children);
	}
}
It sure was wrong but for me it doesn't make any difference.

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 11:03 am
by Chris
It gives me line numbers this time

Code: Select all

LoadDecorations: Load external actors.
==9241==
==9241== Thread 1:
==9241== Conditional jump or move depends on uninitialised value(s)
==9241==    at 0x822AB22: FStateDefinitions::ResolveGotoLabels(FActorInfo*, AActor*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:745)
==9241==    by 0x822AE26: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (p_states.cpp:810)
==9241==    by 0x839CE93: FinishActor(FScanner&, FActorInfo*, Baggage&) (thingdef_parse.cpp:532)
==9241==    by 0x83912C1: ParseActor(FScanner&) (thingdef.cpp:579)
==9241==    by 0x839CD55: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==9241==    by 0x839CC3A: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==9241==    by 0x839CDD8: LoadDecorations() (thingdef_main.cpp:148)
==9241==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==9241==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==9241==    by 0x812C8F2: main (i_main.cpp:272)
==9241==
==9241== Conditional jump or move depends on uninitialised value(s)
==9241==    at 0x822AB22: FStateDefinitions::ResolveGotoLabels(FActorInfo*, AActor*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:745)
==9241==    by 0x822ABF0: FStateDefinitions::ResolveGotoLabels(FActorInfo*, AActor*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:750)
==9241==    by 0x822AE26: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (p_states.cpp:810)
==9241==    by 0x839CE93: FinishActor(FScanner&, FActorInfo*, Baggage&) (thingdef_parse.cpp:532)
==9241==    by 0x83912C1: ParseActor(FScanner&) (thingdef.cpp:579)
==9241==    by 0x839CD55: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==9241==    by 0x839CC3A: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==9241==    by 0x839CDD8: LoadDecorations() (thingdef_main.cpp:148)
==9241==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==9241==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==9241==    by 0x812C8F2: main (i_main.cpp:272)
==9241==
==9241== Conditional jump or move depends on uninitialised value(s)
==9241==    at 0x40236E3: strcpy (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==9241==    by 0x8192305: GetSpriteIndex(char const*) (info.cpp:77)
==9241==    by 0x839FC59: Handler_crouchsprite_S_PlayerPawn(APlayerPawn*, Baggage&, FPropParam*) (thingdef_properties.cpp:1978)
==9241==    by 0x839D6CE: ParsePropertyParams(FScanner&, FPropertyInfo*, AActor*, Baggage&) (thingdef_parse.cpp:452)
==9241==    by 0x839D9EE: ParseActorProperty(FScanner&, Baggage&) (thingdef_parse.cpp:496)
==9241==    by 0x839123A: ParseActor(FScanner&) (thingdef.cpp:566)
==9241==    by 0x839CD55: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==9241==    by 0x839CC3A: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==9241==    by 0x839CDD8: LoadDecorations() (thingdef_main.cpp:148)
==9241==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==9241==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==9241==    by 0x812C8F2: main (i_main.cpp:272)
R_Init: Init Doom refresh subsystem.
DecalLibrary: Load decals.
M_Init: Init miscellaneous info.
P_Init: Init Playloop state.
==9241==
==9241== Use of uninitialised value of size 4
==9241==    at 0x826DA9E: R_InitSpriteDefs() (r_things.cpp:371)
==9241==    by 0x826DD8D: R_InitSprites() (r_things.cpp:889)
==9241==    by 0x8215833: P_Init() (p_setup.cpp:3605)
==9241==    by 0x815D09F: D_DoomMain() (d_main.cpp:2586)
==9241==    by 0x812C8F2: main (i_main.cpp:272)
So it seems list.State and/or list.DefineFlags aren't being initialized in some circumstances.

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 11:08 am
by Chris
With that change to the function, I get a couple more valgrind errors:

Code: Select all

==9418== Conditional jump or move depends on uninitialised value(s)
==9418==    at 0x8229C98: FStateDefinitions::FixStatePointers(FActorInfo*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:724)
==9418==    by 0x822ACC6: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (p_states.cpp:780)
==9418==    by 0x839CEB7: FinishActor(FScanner&, FActorInfo*, Baggage&) (thingdef_parse.cpp:532)
==9418==    by 0x83912E5: ParseActor(FScanner&) (thingdef.cpp:579)
==9418==    by 0x839CD79: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==9418==    by 0x839CC5E: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==9418==    by 0x839CDFC: LoadDecorations() (thingdef_main.cpp:148)
==9418==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==9418==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==9418==    by 0x812C8F2: main (i_main.cpp:272)
..and..
==9418== Conditional jump or move depends on uninitialised value(s)
==9418==    at 0x8229C98: FStateDefinitions::FixStatePointers(FActorInfo*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:724)
==9418==    by 0x8229D41: FStateDefinitions::FixStatePointers(FActorInfo*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:730)
==9418==    by 0x822ACC6: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (p_states.cpp:780)
==9418==    by 0x839CEB7: FinishActor(FScanner&, FActorInfo*, Baggage&) (thingdef_parse.cpp:532)
==9418==    by 0x83912E5: ParseActor(FScanner&) (thingdef.cpp:579)
==9418==    by 0x839CD79: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==9418==    by 0x839CC5E: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==9418==    by 0x839CDFC: LoadDecorations() (thingdef_main.cpp:148)
==9418==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==9418==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==9418==    by 0x812C8F2: main (i_main.cpp:272)
So it definitely appears list.DefineFlags isn't getting initialized sometimes.

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 11:31 am
by Graf Zahl
Are these messages printed when the uninitialized data is accessed or are they collected? If they are immediately printed, please add the following line at the beginning of FStateDefinitions::FinishStates. Hopefully that brings me closer to the real problem.

Code: Select all

	Printf("Finishing states for %s\n", actor->Class->TypeName.GetChars());

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 11:57 am
by Chris
They're printed when they occur, yes. The following ones seem to produce errors (still including the function change from earlier)..

Code: Select all

Finishing states for Inventory
==10731==
==10731== Thread 1:
==10731== Conditional jump or move depends on uninitialised value(s)
==10731==    at 0x8229C98: FStateDefinitions::FixStatePointers(FActorInfo*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:724)
==10731==    by 0x822AEDB: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (p_states.cpp:781)
==10731==    by 0x839CED7: FinishActor(FScanner&, FActorInfo*, Baggage&) (thingdef_parse.cpp:532)
==10731==    by 0x8391305: ParseActor(FScanner&) (thingdef.cpp:579)
==10731==    by 0x839CD99: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==10731==    by 0x839CC7E: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==10731==    by 0x839CE1C: LoadDecorations() (thingdef_main.cpp:148)
==10731==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==10731==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==10731==    by 0x812C8F2: main (i_main.cpp:272)
==10731==
==10731== Conditional jump or move depends on uninitialised value(s)
==10731==    at 0x822AD40: FStateDefinitions::ResolveGotoLabels(FActorInfo*, AActor*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:746)
==10731==    by 0x822B061: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (p_states.cpp:812)
==10731==    by 0x839CED7: FinishActor(FScanner&, FActorInfo*, Baggage&) (thingdef_parse.cpp:532)
==10731==    by 0x8391305: ParseActor(FScanner&) (thingdef.cpp:579)
==10731==    by 0x839CD99: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==10731==    by 0x839CC7E: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==10731==    by 0x839CE1C: LoadDecorations() (thingdef_main.cpp:148)
==10731==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==10731==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==10731==    by 0x812C8F2: main (i_main.cpp:272)
...
Finishing states for StealthChaingunGuy
==10731==
==10731== Conditional jump or move depends on uninitialised value(s)
==10731==    at 0x822AD40: FStateDefinitions::ResolveGotoLabels(FActorInfo*, AActor*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:746)
==10731==    by 0x822AE0E: FStateDefinitions::ResolveGotoLabels(FActorInfo*, AActor*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:751)
==10731==    by 0x822B061: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (p_states.cpp:812)
==10731==    by 0x839CED7: FinishActor(FScanner&, FActorInfo*, Baggage&) (thingdef_parse.cpp:532)
==10731==    by 0x8391305: ParseActor(FScanner&) (thingdef.cpp:579)
==10731==    by 0x839CD99: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==10731==    by 0x839CC7E: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==10731==    by 0x839CE1C: LoadDecorations() (thingdef_main.cpp:148)
==10731==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==10731==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==10731==    by 0x812C8F2: main (i_main.cpp:272)
...
Finishing states for HereticImpLeader
==10731==
==10731== Conditional jump or move depends on uninitialised value(s)
==10731==    at 0x8229C98: FStateDefinitions::FixStatePointers(FActorInfo*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:724)
==10731==    by 0x8229D41: FStateDefinitions::FixStatePointers(FActorInfo*, TArray<FStateDefine, FStateDefine>&) (p_states.cpp:730)
==10731==    by 0x822AEDB: FStateDefinitions::FinishStates(FActorInfo*, AActor*, TArray<FState, FState>&) (p_states.cpp:781)
==10731==    by 0x839CED7: FinishActor(FScanner&, FActorInfo*, Baggage&) (thingdef_parse.cpp:532)
==10731==    by 0x8391305: ParseActor(FScanner&) (thingdef.cpp:579)
==10731==    by 0x839CD99: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==10731==    by 0x839CC7E: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==10731==    by 0x839CE1C: LoadDecorations() (thingdef_main.cpp:148)
==10731==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==10731==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==10731==    by 0x812C8F2: main (i_main.cpp:272)
...
Finishing states for ChexMineCart
==10731==
==10731== Conditional jump or move depends on uninitialised value(s)
==10731==    at 0x40236E3: strcpy (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==10731==    by 0x8192305: GetSpriteIndex(char const*) (info.cpp:77)
==10731==    by 0x839FC9D: Handler_crouchsprite_S_PlayerPawn(APlayerPawn*, Baggage&, FPropParam*) (thingdef_properties.cpp:1978)
==10731==    by 0x839D712: ParsePropertyParams(FScanner&, FPropertyInfo*, AActor*, Baggage&) (thingdef_parse.cpp:452)
==10731==    by 0x839DA32: ParseActorProperty(FScanner&, Baggage&) (thingdef_parse.cpp:496)
==10731==    by 0x839127E: ParseActor(FScanner&) (thingdef.cpp:566)
==10731==    by 0x839CD99: ParseDecorate(FScanner&) (thingdef_main.cpp:117)
==10731==    by 0x839CC7E: ParseDecorate(FScanner&) (thingdef_main.cpp:80)
==10731==    by 0x839CE1C: LoadDecorations() (thingdef_main.cpp:148)
==10731==    by 0x8192255: FActorInfo::StaticInit() (info.cpp:107)
==10731==    by 0x815CD19: D_DoomMain() (d_main.cpp:2503)
==10731==    by 0x812C8F2: main (i_main.cpp:272)
All the others finish without triggering a valgrind error.

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 12:26 pm
by Graf Zahl
Looks a bit random... :?

Re: [r1249] Release compile of zdoom doesn't run

Posted: Sun Oct 05, 2008 12:44 pm
by Graf Zahl
Can you retry with the latest SVN revision?