Jacek Caban : gdi32: Remove workaround for old freetype versions.
Alexandre Julliard
julliard at winehq.org
Tue Sep 21 15:59:03 CDT 2021
Module: wine
Branch: master
Commit: 862ae1a634cbf49f54622050b9bc60c95f019065
URL: https://source.winehq.org/git/wine.git/?a=commit;h=862ae1a634cbf49f54622050b9bc60c95f019065
Author: Jacek Caban <jacek at codeweavers.com>
Date: Tue Sep 21 15:54:36 2021 +0200
gdi32: Remove workaround for old freetype versions.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/gdi32/font.c | 53 ++---------------------------------------------------
1 file changed, 2 insertions(+), 51 deletions(-)
diff --git a/dlls/gdi32/font.c b/dlls/gdi32/font.c
index f916ed97f01..11cec6b95ae 100644
--- a/dlls/gdi32/font.c
+++ b/dlls/gdi32/font.c
@@ -5554,24 +5554,6 @@ DWORD WINAPI NtGdiGetGlyphIndicesW( HDC hdc, const WCHAR *str, INT count,
* *
***********************************************************************/
-static BOOL CALLBACK load_enumed_resource(HMODULE hModule, LPCWSTR type, LPWSTR name, LONG_PTR lParam)
-{
- HRSRC rsrc = FindResourceW(hModule, name, type);
- HGLOBAL hMem = LoadResource(hModule, rsrc);
- LPVOID *pMem = LockResource(hMem);
- int *num_total = (int *)lParam;
- DWORD num_in_res;
-
- TRACE("Found resource %s - trying to load\n", wine_dbgstr_w(type));
- if (!NtGdiAddFontMemResourceEx( pMem, SizeofResource(hModule, rsrc), NULL, 0, &num_in_res ))
- {
- ERR("Failed to load PE font resource mod=%p ptr=%p\n", hModule, hMem);
- return FALSE;
- }
-
- *num_total += num_in_res;
- return TRUE;
-}
static int add_system_font_resource( const WCHAR *file, DWORD flags )
{
@@ -5949,26 +5931,8 @@ void font_init(void)
INT WINAPI NtGdiAddFontResourceW( const WCHAR *str, ULONG size, ULONG files, DWORD flags,
DWORD tid, void *dv )
{
- int ret;
-
if (!font_funcs) return 1;
- if (!(ret = add_font_resource( str, flags )))
- {
- /* FreeType <2.3.5 has problems reading resources wrapped in PE files. */
- HMODULE hModule = LoadLibraryExW(str, NULL, LOAD_LIBRARY_AS_DATAFILE);
- if (hModule != NULL)
- {
- int num_resources = 0;
- LPWSTR rt_font = (LPWSTR)((ULONG_PTR)8); /* we don't want to include winuser.h */
-
- TRACE("WineEngAddFontResourceEx failed on PE file %s - trying to load resources manually\n",
- wine_dbgstr_w(str));
- if (EnumResourceNamesW(hModule, rt_font, load_enumed_resource, (LONG_PTR)&num_resources))
- ret = num_resources;
- FreeLibrary(hModule);
- }
- }
- return ret;
+ return add_font_resource( str, flags );
}
/***********************************************************************
@@ -6035,21 +5999,8 @@ BOOL WINAPI NtGdiRemoveFontMemResourceEx( HANDLE handle )
BOOL WINAPI NtGdiRemoveFontResourceW( const WCHAR *str, ULONG size, ULONG files, DWORD flags,
DWORD tid, void *dv )
{
- int ret;
-
if (!font_funcs) return TRUE;
-
- if (!(ret = remove_font_resource( str, flags )))
- {
- /* FreeType <2.3.5 has problems reading resources wrapped in PE files. */
- HMODULE hModule = LoadLibraryExW(str, NULL, LOAD_LIBRARY_AS_DATAFILE);
- if (hModule != NULL)
- {
- WARN("Can't unload resources from PE file %s\n", wine_dbgstr_w(str));
- FreeLibrary(hModule);
- }
- }
- return ret;
+ return remove_font_resource( str, flags );
}
/***********************************************************************
More information about the wine-cvs
mailing list