Opened 19 years ago
Closed 18 years ago
#3393 closed defect (fixed)
GOB3: Data file fails to open, lockup
| Reported by: | SF/onnojongbloed | Owned by: | agent-q |
|---|---|---|---|
| Priority: | blocker | Component: | Engine: Gob |
| Version: | Keywords: | ||
| Cc: | Game: | Goblins 3 |
Description
Original thread on the forums: http://forums.scummvm.org/viewtopic.php?p=26812
Version: 0.10.0a, build: DS #D
Issue: ScummVM locks up after the initial Coktel movie/sting.
Cause: IMD.ITK fails to be loaded, causes error() to be called which halts the application.
Method of Reproduction: Hardware was a Nintendo DS classic with an M3 Adapter (v30 firmware, latest) and a 1gb kingston flashcard. The game is the CD version. DLDI driver came from <a href="http://dldi.drunkencoders.com/index.php?title=M3_Adapter_%28SD_Card%29">here</a> and is the one by AgentQ.
Possible cause: DataIO::file_open() fails, because open on the file handle fails, all the way down to FAT_fopen failing in ::std_fopen. Is this a bug in the DLDI driver? Path passed to FAT_fopen was "GOB3//IMD.ITK".
Workaround: o2_openItk doesn't seem to mind when DataIO::openDataFile(const char *src, bool itk) fails. REplacing the error() call in that function by a return at least allowed me to resume the game into a playable state.
Worth noting: Other ITK files seem to load just fine for some reason.
Ticket imported from: #1787239. Ticket imported from: bugs/3393.
Change History (8)
comment:1 by , 19 years ago
comment:3 by , 18 years ago
| Owner: | set to |
|---|
comment:4 by , 18 years ago
| Priority: | normal → blocker |
|---|
comment:7 by , 18 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |

Increasing MAX_FILES_OPEN (to 8) seems to have fixed it. This define can be found in gba_nds_fat.h