#4811 closed defect (fixed)
NIPPON: Assertion at Dough's House (regression)
Reported by: | raziel- | Owned by: | peres |
---|---|---|---|
Priority: | high | Component: | Engine: Parallaction |
Version: | Keywords: | ||
Cc: | Game: | Nippon Safes |
Description
Features compiled in: Vorbis FLAC MP3 RGB zLib
When Dough is holding the letter from the mailbox to read it i get an assertion "label < label.size()" failed: file "engines/parallaction/graphics.cpp", line 565 No save position due to bug item #2969234
Nippon Safes Inc. (Multi-lingual/Amiga)
Amiga OS4 gcc (GCC) 4.2.4 (adtools build 20090118)
Ticket imported from: #2969257. Ticket imported from: bugs/4811.
Attachments (3)
Change History (18)
comment:1 by , 15 years ago
Owner: | set to |
---|
by , 15 years ago
Attachment: | nippon.000 added |
---|
comment:2 by , 15 years ago
The very same happens when Donna is holding the Suzy Yong poster inside "Lucky Look"
comment:3 by , 15 years ago
The label rendered for the text "examine the poster"' is freed when entering "Lucky Look" (in changeLocation, even two or three times). In fact all inventory labels are destroyed when changing locations, but it only triggers asserts when you have more inventory items than there are labels in the new room. (Since the label IDs are restarted at 0.)
comment:4 by , 15 years ago
Summary: | NIPPON: Assertion at Dough's House → NIPPON: Assertion at Dough's House (regression) |
---|
comment:5 by , 15 years ago
This is another regression, which was specifically caused by revision 32873.
comment:6 by , 15 years ago
Priority: | normal → high |
---|
comment:7 by , 15 years ago
I attached a patch to fix the issue, by letting the zones to whom the label belongs to manage their lifecycle.
I tried both the attached savegames and I got no crashes, so at least the bug is patched. What I could not do is checking for memory leaks, that are likely to be.
comment:8 by , 15 years ago
Nice work. This fixes the crashes for me too.
Looking over the patch, I think it would leak the ad-hoc created labels for things like the test result screen. (Or at least I do not see where the labels created there are freed.)
A quick valgrind session shows label leaks on the language screen.
comment:10 by , 15 years ago
I committed an enhanced version of the patch on r48811. I could not perform any leak checking with valgrind, and won't be able until I go back home in 10 days, so I did not backport it to the release branch.
comment:11 by , 15 years ago
This bug has been fixed in revision 48811 and 48827. The patch has been backported to the release branch of version 1.1.1 in r48828. The leaks have been plugged, except for the labels allocated by _c_testResults, which is invoked at most once per run.
Should this be closed or just priority lowered?
comment:12 by , 15 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:14 by , 15 years ago
Resolution: | fixed |
---|
comment:15 by , 15 years ago
Resolution: | → fixed |
---|
Open Mailbox, take letter, crash :-)