Bug 864 - ChooseFontW crashing on certain lpTemplateName

Shachar Shemesh sun at consumer.org.il
Tue Jul 9 14:26:48 CDT 2002


License: LPGL

ChangeLog:
Shachar Shemesh <winecode at sun.consumer.org.il>

    dlls/commdlg/fontdlg.c
        - Fixed access to the lpTemplateName of ChooseFont in cases 
where the Flags don't specify to use it.
        - Do not try to convert the resource name from ANSI to Wide if 
it is a result of MAKEINTRESOURCE (and therefor no a string).

-------------- next part --------------
Index: dlls/commdlg/fontdlg.c
===================================================================
RCS file: /home/wine/wine/dlls/commdlg/fontdlg.c,v
retrieving revision 1.38
diff -u -r1.38 fontdlg.c
--- dlls/commdlg/fontdlg.c	31 May 2002 23:25:45 -0000	1.38
+++ dlls/commdlg/fontdlg.c	9 Jul 2002 19:21:28 -0000
@@ -323,7 +323,7 @@
 
     LogFontWtoA(cfw->lpLogFont, lpLogFont);
 
-    if (cfw->lpTemplateName != NULL)
+    if ((cfw->Flags&CF_ENABLETEMPLATE)!=0 && HIWORD(cfw->lpTemplateName)!=0)
     {
     	cfa->lpTemplateName = HEAP_strdupWtoA(GetProcessHeap(), 0,
     	    	cfw->lpTemplateName);
@@ -354,7 +354,7 @@
 
     LogFontAtoW(cfa->lpLogFont, lpLogFont);
 
-    if (cfa->lpTemplateName != NULL)
+    if ((cfa->Flags&CF_ENABLETEMPLATE)!=0 && HIWORD(cfa->lpTemplateName) != 0)
     	HeapFree(GetProcessHeap(), 0, (LPSTR)(cfa->lpTemplateName));
 
     if ((cfa->Flags & CF_USESTYLE) != 0 && cfa->lpszStyle != NULL)


More information about the wine-patches mailing list