Opened 3 years ago

Last modified 13 months ago

#13459 new defect

EMI: Crashes during cutscenes with subtitles on

Reported by: getaaron Owned by:
Priority: normal Component: Engine: Grim
Version: Keywords:
Cc: Game: Escape from Monkey Island

Description (last modified by getaaron)

Crashes when cutscene movies are playing if movie subtitles are enabled.

Crash log 1: During the intro sequence, after firing the loaded cannon Elaine comes over to give Guybrush a hug. The game crashed with EXC_BAD_ACCESS after she calls him "snuggle cakes".

Crash log 2: On Lucre island, while the manager takes Guybrush in to view the safety the safety deposit box.

Attachments (5)

scummvm-2022-04-30-221456.ips (20.0 KB ) - added by getaaron 3 years ago.
scummvm-2022-05-01-131524.ips (20.3 KB ) - added by getaaron 3 years ago.
crash while on lucre island at bank
efmi003.gsv (260.0 KB ) - added by getaaron 3 years ago.
saved game at lucre island bank
scummvm-2022-05-01-154221.ips (20.0 KB ) - added by getaaron 3 years ago.
another crash lucre island bank
scummvm-2022-05-01-162315.ips (20.1 KB ) - added by getaaron 3 years ago.
yet another crash lucre island bank

Download all attachments as: .zip

Change History (20)

by getaaron, 3 years ago

comment:1 by getaaron, 3 years ago

Description: modified (diff)

comment:2 by mduggan, 3 years ago

Could you give some more info on your build and system config?

Using the latest git code this runs fine for me also on a macbook, and no problems reported with address sanitizer enabled.

comment:3 by getaaron, 3 years ago

Sure, apologies for the light detail in the initial report, I thought most of the stuff would be in the crash log but looks like not everything I expected.

BTW it didn't reproduce the second time so the exact point in the game might be a red herring.

From the crash report, looks like it crashed on the main thread but I don't have Xcode set up so can't symbolicate the report to see where in the code the crash was.

ScummVM2.6.0git5445-9315545eda8c (Apr 30 2022 04:25:05)
macOS 12.2.1 (21D62)

Hardware Overview:

Model Name:	MacBook Pro
Model Identifier:	MacBookPro18,3
Chip:	Apple M1 Pro
Total Number of Cores:	10 (8 performance and 2 efficiency)
Memory:	32 GB
System Firmware Version:	7429.81.3
OS Loader Version:	7429.81.3
Version 0, edited 3 years ago by getaaron (next)

comment:4 by getaaron, 3 years ago

Description: modified (diff)
Summary: Escape from Monkey Island memory crash during intro sequenceEscape from Monkey Island memory crash during movies playing

Looks like this might just happen intermittently while playing movies. I got a second crash log on Lucre island, while the manager takes Guybrush in to view the safety deposit box. Attaching another crash log.

by getaaron, 3 years ago

crash while on lucre island at bank

comment:5 by getaaron, 3 years ago

After some more testing, the one on Lucre Island is 100% reproducible (it's blocking continuing in the game)

Looks like it's always crashing in the SDLTimer thread (not the main thread as I thought above

Here's a recent example

Thread 11 Crashed:: SDLTimer
0   libGL.dylib                   	       0x20584de84 glDeleteBuffers + 16
1   scummvm                       	       0x104db1860 0x104120000 + 13178976
2   scummvm                       	       0x104df18c4 0x104120000 + 13441220
3   scummvm                       	       0x104df1a38 0x104120000 + 13441592
4   scummvm                       	       0x104dc5b34 0x104120000 + 13261620
5   scummvm                       	       0x104d8f680 0x104120000 + 13039232
6   scummvm                       	       0x104d90770 0x104120000 + 13043568
7   scummvm                       	       0x104d904bc 0x104120000 + 13042876
8   scummvm                       	       0x1066b5d14 0x104120000 + 39410964
9   scummvm                       	       0x1067243a8 0x104120000 + 39863208
10  scummvm                       	       0x106be1ca0 0x104120000 + 44833952
11  scummvm                       	       0x106be1840 0x104120000 + 44832832
12  scummvm                       	       0x106c3258c 0x104120000 + 45163916
13  libsystem_pthread.dylib       	       0x1a41e5240 _pthread_start + 148
14  libsystem_pthread.dylib       	       0x1a41e0024 thread_start + 8

So I'm guessing the line that triggers the crash is https://github.com/scummvm/scummvm/blob/8b4e75ded7a4d02adc5efcbc5aa5fd54e12f24fe/engines/grim/gfx_opengl_shaders.cpp#L1521 but I don't know much about OpenGL or why we would be deleting shaders while a movie is playing

by getaaron, 3 years ago

Attachment: efmi003.gsv added

saved game at lucre island bank

by getaaron, 3 years ago

another crash lucre island bank

by getaaron, 3 years ago

yet another crash lucre island bank

comment:6 by getaaron, 3 years ago

added some more crash reports and a saved game file right before asking teller to see safe deposit box

comment:7 by getaaron, 3 years ago

Description: modified (diff)

Found a forum post on here https://forums.scummvm.org/viewtopic.php?p=97055 which suggests (and I confirmed) that the issue reproduces only when movie subtitles are enabled.

comment:8 by getaaron, 3 years ago

Description: modified (diff)
Summary: Escape from Monkey Island memory crash during movies playingEscape from Monkey Island crashes during cutscenes with subtitles on

comment:9 by antoniou79, 3 years ago

I haven't been able to reproduce this on my PC.

I'm testing with a development build (2.6.0git) from master HEAD, on Windows 10 x64 pro.
With movie subtitles on (or off) I get the full intro cutscenes, the full cutscene after the canon is fired, and the full cutscene for the vault after loading the attached saved game.

The versions I'm testing with are the GOG version and the Steam version. I don't have the original CD version. GOG and Steam versions come prepatched as far as I know.

I've tested multiple times now and still no crash. Also, I've tested with both OpenGL and SDL Surface graphic mode.

comment:10 by antoniou79, 3 years ago

As a side auxilliary note, it seems that Escape from Monkey Island, saves key configuration information in each saved game file.
My saved game use the default keys for choosing dialogue (which are PgUp and PgDn). The attached save game is using W and S for this purpose.

comment:11 by getaaron, 3 years ago

I'm also using the GOG version. Sounds like a Mac-specific issue perhaps?

comment:12 by getaaron, 3 years ago

And yea, I switched to W/S since my laptop doesn't have PgUp/PgDn keys

comment:13 by aquadran, 3 years ago

Summary: Escape from Monkey Island crashes during cutscenes with subtitles onEMI: Crashes during cutscenes with subtitles on

comment:14 by aquadran, 3 years ago

can you switch renderer to "opengl" and see if you able reproduce issue?

comment:15 by somaen, 13 months ago

Would you be able to reply to aquadran's question above?

Note: See TracTickets for help on using tickets.