Andreas Rosenberg sonix2003@ctf-z.de writes:
1844: Point Size in DLG_TEMPLATE may be negative (with DS_SETFONT)
Within Windows the pointSize parameter (for the FONT in the DLG_TEMPLATE struct) may be a signed 16-bit integer. With WINE this integers get's converted to an unsigned int resulting in huge font for the dialog. The size of the dialog is being computed based on this font and results in invalid parameters for CreateWindow, that may cause a termination of WINE. We detected this problem testing our software with WINE.
The fix for pointSize is OK, but why did you also change the sign of the font height in the CreateFont call? This doesn't look right.