malloc(): unsorted double linked list corrupted
Aborted
Not sure this is really fixed, after all. I am now getting this same error again when re-installing Amiberry. As before, no error when using binary from github release page, but does error when using RetroPie version (built from source or precompiled. RPi4.)
Investigating, it seems related to amiberry.conf:
Using github binary, works with or without amiberry.conf; is created if not present.
using RetroPie binary, does not work without. However, if amiberry.conf exist with a defined rom_path= to the kickstarts, then RP binary does work, and conf is populated with remaining values.
oddly, it also still works if conf contains only floppy_sounds_dir=/opt/retropie/emulators/amiberry/data/floppy_sounds/
...so it's just these two?
Seems yes: if both rom_path and floppy_sounds_dir are removed from the working conf, then RP version aborts with error; but if either one is present (even as the only entry), then it works fine, and fills in remaining values, including whichever of these two was left out.
This COULD be work-around by pre-populate conf with rom_path value, but it don't explain why github version still work fine with no conf at all.
# set various media paths to the 'amiga' rom folder
- if [ -f "$md_inst/conf/amiberry.conf" ]; then
iniConfig "=" "" "$md_inst/conf/amiberry.conf"
+ iniSet "rom_path" "$biosdir/amiga"
iniSet "floppy_path" "$romdir/amiga"
iniSet "harddrive_path" "$romdir/amiga"
iniSet "cdrom_path" "$romdir/amiga"
iniSet "lha_path" "$romdir/amiga"
- fi
+ chown "$__user":"$__group" "$md_inst/conf/amiberry.conf"
Current script module does set some paths in conf, but the behavior confuse me. Since the conf file is not exist on clean install, these values are not set at first. Defaults are then used ($md_inst) for some time until (optional) if user chooses to reinstall/update amiberry. Only at that time, file DOES exist, and so paths are now CHANGE to use $romdir instead of $md_inst like they had been using. Is this really the intended way, and if so then why?
EDIT: i maybe didn't test enough -- the "remaining values are filled" in the .conf, only when run the +Start Amiberry.sh. When launch by one of the .lha roms instead, no values are filled, but the game still seem to work. They load and play anyway, did not test saving. But it's late and I've shut down for the night. Will test saving tomorrow.