OS2 World Community Forum

OS/2, eCS & ArcaOS - Technical => Programming => Topic started by: Jochen Schäfer on February 09, 2026, 08:12:56 am

Title: Uconv in Dosbox-X
Post by: Jochen Schäfer on February 09, 2026, 08:12:56 am
Dosbox-X uses Physfs to access filesystems. Physfs uses Uconv.
When Dosbox-X cannot mount a drive, it destroys the Physfs object, and while doing so, UniFreeUconvObject crashes the program.
The pointer to the DLL functions seems to be valid, the Uconv object seems valid.
I attached the crash log. I can workaround the crash, if I force Physfs to not find uconv.dll, so it works without it.
I don't want to do that, but I don't know how to debug the issue, since this is OS territory.
Any ideas?
Title: Re: Uconv in Dosbox-X
Post by: Dave Yeo on February 09, 2026, 04:34:05 pm
You should install \OS2IMAGE\DEBUG\SYMBOLS\OS2\DLL\UCV32.SYM from your AOS ISO and recreate the trp.
Title: Re: Uconv in Dosbox-X
Post by: Jochen Schäfer on February 09, 2026, 04:53:36 pm
Ah thank you. I tried to to locate the symbols, but couldn't find them.
Title: Re: Uconv in Dosbox-X
Post by: Jochen Schäfer on February 10, 2026, 09:58:51 am
I think, I found the problem. Physfs loads uconv.dll at runtime and uses the signature
Code: [Select]
UniFreeUconvObject(UConvObject*),
while uconv.h and the system documentation say:
Code: [Select]
UniFreeUconvObject(UConvObject).
I removed the pointer, and look, no crashes anymore.

@Dave: Thanks for the hint at the symbol files. That's always useful.