Alexandre Julliard : gdi32: Don' t bother returning the driver module from DRIVER_load_driver.

Alexandre Julliard julliard at winehq.org
Mon Dec 30 13:06:00 CST 2013


Module: wine
Branch: master
Commit: 7c3bb6070a844fa9336c67d58d95fe28ad4778c8
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=7c3bb6070a844fa9336c67d58d95fe28ad4778c8

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Mon Dec 30 17:42:48 2013 +0100

gdi32: Don't bother returning the driver module from DRIVER_load_driver.

---

 dlls/gdi32/dc.c          |    3 +--
 dlls/gdi32/driver.c      |   17 +++++------------
 dlls/gdi32/gdi_private.h |    2 +-
 3 files changed, 7 insertions(+), 15 deletions(-)

diff --git a/dlls/gdi32/dc.c b/dlls/gdi32/dc.c
index 9d3af57..ba869f1 100644
--- a/dlls/gdi32/dc.c
+++ b/dlls/gdi32/dc.c
@@ -625,7 +625,6 @@ HDC WINAPI CreateDCW( LPCWSTR driver, LPCWSTR device, LPCWSTR output,
     HDC hdc;
     DC * dc;
     const struct gdi_dc_funcs *funcs;
-    HMODULE module;
     WCHAR buf[300];
 
     GDI_CheckNotLock();
@@ -640,7 +639,7 @@ HDC WINAPI CreateDCW( LPCWSTR driver, LPCWSTR device, LPCWSTR output,
         strcpyW(buf, driver);
     }
 
-    if (!(funcs = DRIVER_load_driver( buf, &module )))
+    if (!(funcs = DRIVER_load_driver( buf )))
     {
         ERR( "no driver found for %s\n", debugstr_w(buf) );
         return 0;
diff --git a/dlls/gdi32/driver.c b/dlls/gdi32/driver.c
index 750ef11..31703fe 100644
--- a/dlls/gdi32/driver.c
+++ b/dlls/gdi32/driver.c
@@ -91,7 +91,7 @@ static struct graphics_driver *create_driver( HMODULE module )
  *
  * Special case for loading the display driver: get the name from the config file
  */
-static const struct gdi_dc_funcs *get_display_driver( HMODULE *module_ret )
+static const struct gdi_dc_funcs *get_display_driver(void)
 {
     if (!display_driver)
     {
@@ -104,8 +104,6 @@ static const struct gdi_dc_funcs *get_display_driver( HMODULE *module_ret )
             __wine_set_display_driver( 0 );
         }
     }
-
-    *module_ret = display_driver->module;
     return display_driver->funcs;
 }
 
@@ -113,7 +111,7 @@ static const struct gdi_dc_funcs *get_display_driver( HMODULE *module_ret )
 /**********************************************************************
  *	     DRIVER_load_driver
  */
-const struct gdi_dc_funcs *DRIVER_load_driver( LPCWSTR name, HMODULE *module_ret )
+const struct gdi_dc_funcs *DRIVER_load_driver( LPCWSTR name )
 {
     HMODULE module;
     struct graphics_driver *driver, *new_driver;
@@ -121,16 +119,12 @@ const struct gdi_dc_funcs *DRIVER_load_driver( LPCWSTR name, HMODULE *module_ret
     static const WCHAR display1W[] = {'\\','\\','.','\\','D','I','S','P','L','A','Y','1',0};
 
     /* display driver is a special case */
-    if (!strcmpiW( name, displayW ) || !strcmpiW( name, display1W ))
-        return get_display_driver( module_ret );
+    if (!strcmpiW( name, displayW ) || !strcmpiW( name, display1W )) return get_display_driver();
 
     if ((module = GetModuleHandleW( name )))
     {
-        if (display_driver && display_driver->module == module)
-        {
-            *module_ret = module;
-            return display_driver->funcs;
-        }
+        if (display_driver && display_driver->module == module) return display_driver->funcs;
+
         EnterCriticalSection( &driver_section );
         LIST_FOR_EACH_ENTRY( driver, &drivers, struct graphics_driver, entry )
         {
@@ -160,7 +154,6 @@ const struct gdi_dc_funcs *DRIVER_load_driver( LPCWSTR name, HMODULE *module_ret
     list_add_head( &drivers, &driver->entry );
     TRACE( "loaded driver %p for %s\n", driver, debugstr_w(name) );
 done:
-    *module_ret = driver->module;
     LeaveCriticalSection( &driver_section );
     return driver->funcs;
 }
diff --git a/dlls/gdi32/gdi_private.h b/dlls/gdi32/gdi_private.h
index 1d90f6c..430e652 100644
--- a/dlls/gdi32/gdi_private.h
+++ b/dlls/gdi32/gdi_private.h
@@ -268,7 +268,7 @@ extern const struct gdi_dc_funcs null_driver DECLSPEC_HIDDEN;
 extern const struct gdi_dc_funcs dib_driver DECLSPEC_HIDDEN;
 extern const struct gdi_dc_funcs path_driver DECLSPEC_HIDDEN;
 extern const struct gdi_dc_funcs *font_driver DECLSPEC_HIDDEN;
-extern const struct gdi_dc_funcs *DRIVER_load_driver( LPCWSTR name, HMODULE *module ) DECLSPEC_HIDDEN;
+extern const struct gdi_dc_funcs *DRIVER_load_driver( LPCWSTR name ) DECLSPEC_HIDDEN;
 extern BOOL DRIVER_GetDriverName( LPCWSTR device, LPWSTR driver, DWORD size ) DECLSPEC_HIDDEN;
 
 /* enhmetafile.c */




More information about the wine-cvs mailing list