Opened 17 years ago

Closed 17 years ago

Last modified 17 years ago

#3206 closed defect (fixed)

NIPPON: Crash on exit

Reported by: eriktorbjorn Owned by: peres
Priority: blocker Component: Engine: Parallaction
Version: Keywords:
Cc: Game: Nippon Safes

Description

Latest ScummVM SVN snapshot English Amiga demo of Nippon Safes

The Parallaction engine does not exit very gracefully. In fact, it crashes for me every time.

The destruction of the Parallaction engine is accompanied by a snarl of invalid and/or double frees (which should be fixed, of course), but the immediate reason for the crash seems to be that ~Parallaction() calls freeLocation() after _soundMan has been deleted. The freeLocation() function calls _soundMan->stopSfx() a couple of times.

On the other hand, if I don't delete _soundMan, ScummVM hangs for me, so it actually seems to *depend* on crashing to behave "correctly".

Ticket imported from: #1726185. Ticket imported from: bugs/3206.

Change History (6)

comment:1 by sev-, 17 years ago

Raising priority. This is a release-critical bug.

comment:2 by sev-, 17 years ago

Owner: set to peres
Priority: normalblocker

comment:3 by peres, 17 years ago

I updated destructor code and it shouldn't crash now. Please report any further issues or I'll close this item.

comment:4 by eriktorbjorn, 17 years ago

Sorry, I forgot about this until now. The crash and invalid free/deletes seem to be all gone now. The only Valgrind warnings remaining (at least when simply starting and quitting the demo) are about uninitialised values in AmigaDisk::unpackBitmap(), and that's probably completely unrelated to this bug report.

comment:5 by peres, 17 years ago

I'm closing this issue. Will take a look at your warnings soon.

comment:6 by peres, 17 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.