PostScript driver demand loading
Ian Pilcher
pilcher at concentric.net
Thu Mar 1 03:33:44 CST 2001
Due to the overwhelmingly positive response -- 1 positive, 0 negative.
(Yes, that is sarcasm.)
Changelog:
* graphics/driver.c, dlls/gdi/gdi_main.c
Ian Pilcher <pilcher at concentric.net>
Don't load the WINEPS driver until it's needed
--
========================================================================
Ian Pilcher pilcher at concentric.net
========================================================================
-------------- next part --------------
--- ../wine-20010226cvs/graphics/driver.c Mon Nov 27 17:54:29 2000
+++ graphics/driver.c Tue Feb 27 18:34:08 2001
@@ -54,15 +54,25 @@
*/
const DC_FUNCTIONS *DRIVER_FindDriver( LPCSTR name )
{
- GRAPHICS_DRIVER *driver = firstDriver;
+ GRAPHICS_DRIVER *driver;
+ HINSTANCE hDriver;
TRACE(": %s\n", name);
- while (driver && name)
- {
+
+ if (!name) return genericDriver ? genericDriver->funcs : NULL;
+
+ for (driver = firstDriver; driver; driver = driver->next)
if (!strcasecmp( driver->name, name )) return driver->funcs;
- driver = driver->next;
- }
- return genericDriver ? genericDriver->funcs : NULL;
+
+ if (!(hDriver = LoadLibraryA (name))) return NULL;
+
+ for (driver = firstDriver; driver; driver = driver->next)
+ if (!strcasecmp( driver->name, name )) return driver->funcs;
+
+ if (!FreeLibrary (hDriver))
+ WARN ("FreeLibrary failed with code %li\n", GetLastError ());
+
+ return NULL;
}
--- ../wine-20010226cvs/dlls/gdi/gdi_main.c Fri Jan 26 14:43:43 2001
+++ dlls/gdi/gdi_main.c Tue Feb 27 18:19:44 2001
@@ -24,9 +24,6 @@
/* Create the Win16 printer driver */
if (!WIN16DRV_Init()) return FALSE;
- /* PSDRV initialization */
- if (!LoadLibraryA( "wineps" )) return FALSE;
-
return TRUE;
}
More information about the wine-patches
mailing list