mirror of https://github.com/mgba-emu/mgba.git
GBA Core: Fix loading symbols from ELF files if the file doesn't end with .elf
This commit is contained in:
parent
5ebf3822cc
commit
4c161ff4df
1
CHANGES
1
CHANGES
|
@ -26,6 +26,7 @@ Other fixes:
|
||||||
- GB, GBA Core: Fix memory leak if reloading debug symbols
|
- GB, GBA Core: Fix memory leak if reloading debug symbols
|
||||||
- GBA Audio: Fix crash if audio FIFOs and timers get out of sync
|
- GBA Audio: Fix crash if audio FIFOs and timers get out of sync
|
||||||
- GBA Audio: Fix crash in audio subsampling if timing lockstep breaks
|
- GBA Audio: Fix crash in audio subsampling if timing lockstep breaks
|
||||||
|
- GBA Core: Fix loading symbols from ELF files if the file doesn't end with .elf
|
||||||
- GBA Memory: Let raw access read high MMIO addresses
|
- GBA Memory: Let raw access read high MMIO addresses
|
||||||
- Qt: Fix savestate preview sizes with different scales (fixes mgba.io/i/2560)
|
- Qt: Fix savestate preview sizes with different scales (fixes mgba.io/i/2560)
|
||||||
- Qt: Fix potential crash when configuring shortcuts
|
- Qt: Fix potential crash when configuring shortcuts
|
||||||
|
|
|
@ -1242,6 +1242,7 @@ static void _GBACoreDetachDebugger(struct mCore* core) {
|
||||||
}
|
}
|
||||||
|
|
||||||
static void _GBACoreLoadSymbols(struct mCore* core, struct VFile* vf) {
|
static void _GBACoreLoadSymbols(struct mCore* core, struct VFile* vf) {
|
||||||
|
struct GBA* gba = core->board;
|
||||||
bool closeAfter = false;
|
bool closeAfter = false;
|
||||||
if (!core->symbolTable) {
|
if (!core->symbolTable) {
|
||||||
core->symbolTable = mDebuggerSymbolTableCreate();
|
core->symbolTable = mDebuggerSymbolTableCreate();
|
||||||
|
@ -1263,6 +1264,16 @@ static void _GBACoreLoadSymbols(struct mCore* core, struct VFile* vf) {
|
||||||
vf = mDirectorySetOpenSuffix(&core->dirs, core->dirs.base, ".sym", O_RDONLY);
|
vf = mDirectorySetOpenSuffix(&core->dirs, core->dirs.base, ".sym", O_RDONLY);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
if (!vf && gba->mbVf) {
|
||||||
|
vf = gba->mbVf;
|
||||||
|
seek = vf->seek(vf, 0, SEEK_CUR);
|
||||||
|
vf->seek(vf, 0, SEEK_SET);
|
||||||
|
}
|
||||||
|
if (!vf && gba->romVf) {
|
||||||
|
vf = gba->romVf;
|
||||||
|
seek = vf->seek(vf, 0, SEEK_CUR);
|
||||||
|
vf->seek(vf, 0, SEEK_SET);
|
||||||
|
}
|
||||||
if (!vf) {
|
if (!vf) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue