[Scummvm-tracker] [ScummVM :: Bugs] #14617: ACCESS: Failed assertion in copyRectToSurface() when dragging inventory item (Amazon: GoE)
ScummVM :: Bugs
trac at scummvm.org
Sat Sep 9 17:39:28 UTC 2023
#14617: ACCESS: Failed assertion in copyRectToSurface() when dragging inventory
item (Amazon: GoE)
--------------------------------------+----------------------------
Reporter: PushmePullyu | Owner: (none)
Type: defect | Status: new
Priority: normal | Component: Engine: Access
Version: | Keywords:
Game: Amazon: Guardians of Eden |
--------------------------------------+----------------------------
Tested with !645230091f29ddcb73474cd820581e5f739afa15 on Linux x86_64
using the US DOS CD version of Amazon: Guardians of Eden.
When dragging an item to the right or bottom edge of the screen in
inventory view the game terminates. Message for the right edge case:
{{{
scummvm: graphics/surface.cpp:172: void
Graphics::Surface::copyRectToSurface(const void*, int, int, int, int,
int): Assertion `width > 0 && destX + width <= w' failed.
}}}
The reason for the crash is this code in engines/access/inventory.cpp:
in combineItems():
{{{
Common::Rect lastRect(lastBox.x, lastBox.y, lastBox.x + 46, lastBox.y +
35);
screen.copyBlock(&_vm->_buffer2, lastRect);
}}}
Due to the addition, lastRect can be out of bounds of the screen surface.
To reproduce:
1. Start a new game
2. Click on the backpack icon to open the inventory
3. Drag the car keys to the right or bottom edge of the screen
--
Ticket URL: <https://bugs.scummvm.org/ticket/14617>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list