X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6670f56440ae9209b3e2e51e06acf3bc5aaf1905..c268eb3272590152f7f3b1ff20918cd0de193005:/src/os2/fontutil.cpp diff --git a/src/os2/fontutil.cpp b/src/os2/fontutil.cpp index ed91187204..e6d9b45d7f 100644 --- a/src/os2/fontutil.cpp +++ b/src/os2/fontutil.cpp @@ -17,10 +17,6 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ - #pragma implementation "fontutil.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -285,11 +281,16 @@ void wxConvertVectorFontSize( // NOTE: 1 point == 1/72 of an inch. // - vSizef.cx = (FIXED)(((fxPointSize) / 72 ) * lXFontResolution ); - vSizef.cy = (FIXED)(((fxPointSize) / 72 ) * lYFontResolution ); + // multiply first to avoid getting vSizef.cx,cy = 0 since fxPointSize + // is normally < 72 and FontResolution is typically ca. 100 + vSizef.cx = (FIXED)( (fxPointSize * lXFontResolution) / 72 ); + vSizef.cy = (FIXED)( (fxPointSize * lYFontResolution) / 72 ); - pFattrs->lMaxBaselineExt = MAKELONG( HIUSHORT( vSizef.cy ), 0 ); - pFattrs->lAveCharWidth = MAKELONG( HIUSHORT( vSizef.cx ), 0 ); + if (pFattrs) + { + pFattrs->lMaxBaselineExt = MAKELONG( HIUSHORT( vSizef.cy ), 0 ); + pFattrs->lAveCharWidth = MAKELONG( HIUSHORT( vSizef.cx ), 0 ); + } WinReleasePS(hPS); } // end of wxConvertVectorPointSize