Opened 16 years ago

Closed 16 years ago

#932 closed defect (fixed)

DIG: "Trying to append to a nonexistant stream 0"

Reported by: eriktorbjorn Owned by: fingolfin
Priority: normal Component: Engine: SCUMM
Keywords: Cc:
Game: The Dig

Description

While creating the test case for bug #763709 ("DIG:
Recent walk regression") with the latest CVS snapshot,
ScummVM crashed twice with a "Trying to append to a
nonexistant stream 0" message. The first time it then
proceeded with "SDL_BlitSurface failed: SDL_UpperBlit:
passed a NULL surface". The second time it started the
debugger.

I can't reproduce the bug reliably though. Could it be
a race condition?

Ticket imported from: #763714. Ticket imported from: bugs/932.

Change History (4)

comment:1 by fingolfin, 16 years ago

Owner: set to fingolfin

comment:2 by fingolfin, 16 years ago

So, Sound::stopTalkSound was doing this this:
if (_talkChannel != -1)
_scumm->_mixer->stop(_talkChannel);
but left _talkChannel at its old value. Then udner some
circumstances, stop() was called again for _talkChannel - only
that at this time, the channel was already used by something
else -> ka-boom. I fixed this (_talkChannel is now reset to -1)
and since then haven't been able to reproduce this problem. Of
course that is no prove that the problem is gone but before, I
was able to reproduce it in 2 out of 3 tries.

comment:3 by fingolfin, 16 years ago

Resolution: fixed
Status: newclosed

comment:4 by fingolfin, 16 years ago

Still didn't get the error again. Hope it's really fixed. Please
reopen this should you be able to reproduce the problem with
latest CVS.

Note: See TracTickets for help on using tickets.