Opened 8 years ago

Closed 7 years ago

Last modified 7 years ago

#6031 closed defect (worksforme)

SCI: LSL5 - Segfault picking up phone in limo as Patti

Reported by: SF/benv666 Owned by:
Priority: normal Component: Engine: SCI
Keywords: Cc:
Game: Leisure Suit Larry 5

Description

When I went into the limo for the first time as Patti I used the hand symbol on the phone.
Segfaults, reproducible.

Here's the gdb backtrace:
(gdb) run
Starting program: /usr/bin/scummvm
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0x7ffff104e700 (LWP 2515)]
[New Thread 0x7fffe5cf3700 (LWP 2516)]
WARNING: SDL mixer output buffer size: 940 differs from desired: 4096!
User picked target 'lsl5' (gameid 'sci')...
Looking for a plugin supporting this gameid... SCI [SCI0, SCI01, SCI10, SCI11, SCI32]
Starting 'Sierra SCI Game'
ALSA lib pcm.c:7339:(snd_pcm_recover) underrun occurred
scummvm: ./common/rect.h:100: Common::Rect::Rect(int16, int16, int16, int16): Assertion `isValidRect()' failed.

Program received signal SIGABRT, Aborted.
0x00007ffff54bba35 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x00007ffff54bba35 in raise () from /lib64/libc.so.6
#1 0x00007ffff54bd1e8 in abort () from /lib64/libc.so.6
#2 0x00007ffff54b47c2 in __assert_fail_base () from /lib64/libc.so.6
#3 0x00007ffff54b4872 in __assert_fail () from /lib64/libc.so.6
#4 0x00007fffea77ac1f in Sci::GfxPaint16::bitsSave(Common::Rect const&, unsigned char) () from /usr/lib/scummvm/libsci.so
#5 0x00007fffea76e67a in Sci::GfxAnimate::update() ()
from /usr/lib/scummvm/libsci.so
#6 0x00007fffea76ffb2 in Sci::GfxAnimate::kernelAnimate(Sci::reg_t, bool, int, Sci::reg_t*) () from /usr/lib/scummvm/libsci.so
#7 0x00007fffea73effb in Sci::kAnimate(Sci::EngineState*, int, Sci::reg_t*) ()
from /usr/lib/scummvm/libsci.so
#8 0x00007fffea76ca62 in Sci::run_vm(Sci::EngineState*) ()
from /usr/lib/scummvm/libsci.so
#9 0x00007fffea72e4ec in Sci::SciEngine::runGame() ()
from /usr/lib/scummvm/libsci.so
#10 0x00007fffea72ebbc in Sci::SciEngine::run() ()
from /usr/lib/scummvm/libsci.so
#11 0x0000000000478911 in scummvm_main ()
#12 0x0000000000475d7b in main ()

And my scummvm -v:
ScummVM 1.4.1 (May 4 2012 14:38:31)
Features compiled in: TAINTED Vorbis FLAC MP3 ALSA SEQ TiMidity RGB zLib FluidSynth Theora

Ticket imported from: #3524461. Ticket imported from: bugs/6031.

Attachments (2)

lsl5.005 (37.2 KB ) - added by SF/benv666 8 years ago.
Savegame in limo
lsl5-md5 (2.1 KB ) - added by SF/benv666 8 years ago.
md5sum of datafiles

Download all attachments as: .zip

Change History (15)

by SF/benv666, 8 years ago

Attachment: lsl5.005 added

Savegame in limo

comment:1 by SF/benv666, 8 years ago

Summary: Segfault picking up phone in limo as PattiSCI: LSL5 - Segfault picking up phone in limo as Patti

comment:2 by SF/benv666, 8 years ago

Just built the latest scummvm from git, same thing happens.
This time gdb output that has debug symbols:

scummvm: ./common/rect.h:100: Common::Rect::Rect(int16, int16, int16, int16): Assertion `isValidRect()' failed.

Program received signal SIGABRT, Aborted.
0x00007ffff4f2aa35 in raise () from /lib64/libc.so.6

(gdb) bt
#0 0x00007ffff4f2aa35 in raise () from /lib64/libc.so.6
#1 0x00007ffff4f2c1e8 in abort () from /lib64/libc.so.6
#2 0x00007ffff4f237c2 in __assert_fail_base () from /lib64/libc.so.6
#3 0x00007ffff4f23872 in __assert_fail () from /lib64/libc.so.6
#4 0x00000000004e5c95 in Common::Rect::Rect (this=0x7fffffffc560, x1=16120, y1=-1247, x2=-15646, y2=259)
at ./common/rect.h:100
#5 0x00007fffe7770925 in Sci::GfxPaint16::bitsSave(Common::Rect const&, unsigned char) () from /usr/lib/scummvm/libsci.so
#6 0x00007fffe775f47b in Sci::GfxAnimate::update() () from /usr/lib/scummvm/libsci.so
#7 0x00007fffe7760a93 in Sci::GfxAnimate::kernelAnimate(Sci::reg_t, bool, int, Sci::reg_t*) ()
from /usr/lib/scummvm/libsci.so
#8 0x00007fffe7723593 in Sci::kAnimate(Sci::EngineState*, int, Sci::reg_t*) () from /usr/lib/scummvm/libsci.so
#9 0x00007fffe7758bbe in ?? () from /usr/lib/scummvm/libsci.so
#10 0x00007fffe775ab41 in Sci::run_vm(Sci::EngineState*) () from /usr/lib/scummvm/libsci.so
#11 0x00007fffe7710476 in Sci::SciEngine::runGame() () from /usr/lib/scummvm/libsci.so
#12 0x00007fffe770ed9d in Sci::SciEngine::run() () from /usr/lib/scummvm/libsci.so
#13 0x00000000004d37db in runGame (plugin=0x9f6ac0, system=..., edebuglevels=...) at base/main.cpp:225
#14 0x00000000004d4515 in scummvm_main (argc=1, argv=0x7fffffffe0a8) at base/main.cpp:451
#15 0x00000000004d22cb in main (argc=1, argv=0x7fffffffe0a8) at backends/platform/sdl/posix/posix-main.cpp:45
(gdb)

comment:3 by digitall, 8 years ago

benv666: Thank you for the bug report. Will try to replicate from your savegame and then from a clean start.
This is not a segfault, but an assertion failure in Common::Rect.

To help advance this bug, can you provide the following:
1. Please indicate your Operating System.
2. Please attach a text file to this bug, listing your LSL5 datafiles with MD5sums for the files.
The output of a tool such as http://md5summer.org/ would be optimal.
Also any other information indicate your variant i.e. the compilation pressing ID, cover etc.
3. Could you try this with a unmodified stable v1.4.1 build from our download page i.e. not TAINTED?
If it still occurs, try this from a new game start.

comment:4 by digitall, 8 years ago

Resolution: worksforme
Status: newpending

comment:5 by digitall, 8 years ago

Can NOT replicate this from the savegame with the latest Git master or v1.4.1 on Linux x86_32.
This is probably corrupted datafiles or dependent on a specific game variant... Setting this bug pending.

comment:6 by bluegr, 8 years ago

Which version of LSL5 is this? (Language/OS)

by SF/benv666, 8 years ago

Attachment: lsl5-md5 added

md5sum of datafiles

comment:7 by SF/benv666, 8 years ago

Status: pendingnew

comment:8 by SF/benv666, 8 years ago

Attached a file with md5's.

I'm running Slackware64-current, so no official packages that I can try.

The game version is DOS/English, and according to the version file:
1.000
09/11/91
800 326-6654
800 683-4468

comment:9 by digitall, 8 years ago

Checked against my LSL5 version from the LSL5 collection CD.
Most of the files MD5sums match and the version file shows the same values, except the phone (support?) numbers have been XXX out (probably as they are now out of service).

However, resource.004, resource.005 and resource.007 show MD5 mismatches and are probably corrupted.
benv666: Please try recopying from the original media...

comment:10 by digitall, 8 years ago

Status: newpending

comment:11 by digitall, 8 years ago

Set bug to pending waiting on user to confirm that this is not just corrupted datafiles...

comment:12 by bluegr, 7 years ago

For some reason, the bug has not been closed automatically. Perhaps a setting in the project settings?

Closing, as more than 14 days have passed

comment:13 by bluegr, 7 years ago

Status: pendingclosed
Note: See TracTickets for help on using tickets.