View Issue Details

IDProjectCategoryView StatusLast Update
0000477FSSCPgraphicspublic2005-07-15 02:51
ReporterGoober5000 Assigned ToGoober5000  
PriorityimmediateSeverityblockReproducibilityalways
Status resolvedResolutionfixed 
Summary0000477: Assertion failure in bmpman.cpp
DescriptionAssert: be->handle == handle
File: E:\Languages\Visual Studio Projects\Visual C++\fs2_open\code\Bmpman\BmpMan.cpp
Line: 2567
[This filename points to the location of a file on the computer that built this executable]

Call stack:
------------------------------------------------------------------
hud_anim_release()
brief_unload_anims()
brief_common_close()
brief_close()
common_select_close()
commit_pressed()
brief_do_frame()
game_do_state()
gameseq_process_events()
WinMainSub()
WinMain()
WinMainCRTStartup()
KERNEL32.DLL bff8b560()
KERNEL32.DLL bff8b412()
KERNEL32.DLL bff89dd5()
------------------------------------------------------------------
Steps To ReproduceRun a mission. Seemingly any mission will do it. No mods were running at the time.
TagsNo tags attached.

Activities

Goober5000

2005-07-15 01:48

administrator   ~0002780

Rolling back bmpman.cpp to 2.58 does not fix this one, unfortunately.

Goober5000

2005-07-15 02:01

administrator   ~0002782

Assigning away from taylor since it's not clear that it was due to his code.

taylor

2005-07-15 02:15

administrator   ~0002783

Change hud_anim_release() from:

int i;
for ( i = 0; i < ha->num_frames; i++ ) {
bm_unload(ha->first_frame + i);
}

to:

if ( ha->first_frame >= 0 ) {
bm_unload( ha->first_frame );
}

and see if it still happens.

Nothing related to how that particular code worked has been changed as far as bmpman goes so did this just start happening after your PreProcDefines.h changes?

Goober5000

2005-07-15 02:45

administrator   ~0002786

[vader]NOOOOOOOOOOO!!!!!!!!!!!!![/vader]

You were very nearly right about PreProcDefines... the bug manifested when I went through and removed the MORE_SPECIES #define.

The REAL cause of the bug was a typo of KAZAN'S (i vs. idx) that was only revealed when I removed MORE_SPECIES. It was one of the "two bugs working together to make it seem like neither exists" kind of thing. I fixed the other bug but didn't catch this typo.

Ugh... well, sorry for taking up your time on this. :) Good news is that it was your proposed change that clued me in as to what was going on, as it revealed that the hud_anim instance was still memset to all 0's.

Goober5000

2005-07-15 02:51

administrator   ~0002787

Fix0red and CVS'd.

Issue History

Date Modified Username Field Change
2005-07-15 01:47 Goober5000 New Issue
2005-07-15 01:48 Goober5000 Note Added: 0002780
2005-07-15 02:01 Goober5000 Note Added: 0002782
2005-07-15 02:01 Goober5000 Assigned To taylor =>
2005-07-15 02:15 taylor Note Added: 0002783
2005-07-15 02:45 Goober5000 Note Added: 0002786
2005-07-15 02:51 Goober5000 Status assigned => resolved
2005-07-15 02:51 Goober5000 Resolution open => fixed
2005-07-15 02:51 Goober5000 Assigned To => Goober5000
2005-07-15 02:51 Goober5000 Note Added: 0002787