[Scummvm-tracker] [ScummVM :: Bugs] #13101: SHERLOCK: Game crashes lightning matches on lab table
ScummVM :: Bugs
trac at scummvm.org
Thu Nov 25 08:41:30 UTC 2021
#13101: SHERLOCK: Game crashes lightning matches on lab table
-------------------------+-------------------------------------------------
Reporter: popovi76 | Owner: (none)
Type: defect | Status: new
Priority: normal | Component: Engine: Sherlock
Version: | Resolution:
Keywords: | Game: Sherlock Holmes: Case of the
| Serrated Scalpel
-------------------------+-------------------------------------------------
Comment (by eriktorbjorn):
I can see that ImageFile::load() loads a bunch of images with really weird
dimensions. And I have a feeling it's because it doesn't stop in time. I
added some debug messages to print the dimensions of the frames it loaded:
{{{
=> Loading image file from name: 59MATCH4.vgs
ImageFile::load: 53x98
ImageFile::load: 53x97
ImageFile::load: 53x101
ImageFile::load: 53x105
ImageFile::load: 53x95
ImageFile::load: 58x83
ImageFile::load: 67x74
ImageFile::load: 69x78
ImageFile::load: 63x68
ImageFile::load: 55x65
ImageFile::load: 47x59
ImageFile::load: 37x52
ImageFile::load: 26x39
ImageFile::load: 0x26
ImageFile::load: 2348x0
ImageFile::load: 0x0
ImageFile::load: 0x0
ImageFile::load: 0x18944
ImageFile::load: 0x0
ImageFile::load: 0x0
ImageFile::load: 0x0
ImageFile::load: 0x0
ImageFile::load: 0x0
ImageFile::load: 0x0
ImageFile::load: 0x0
ImageFile::load: 0x0
ImageFile::load: 0x0
ImageFile::load: 45641x0
scummvm: graphics/surface.cpp:67: void Graphics::Surface::create(int16,
int16, const Graphics::PixelFormat&): Assertion `width >= 0 && height >=
0' failed.
Aborted
}}}
Note that after the normal-looking sizes, one of the dimensions of the
frame is always 0, which probably means it's not advancing very far in the
stream. It doesn't crash, though, until it encounters a frame with
dimensions that overflow into the negative when cast to a signed 16-bit
integer.
--
Ticket URL: <https://bugs.scummvm.org/ticket/13101#comment:2>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list