New function that returns the message string for a Win32 error code.
authorTor Lillqvist <tml@iki.fi>
Wed, 1 Mar 2000 04:57:07 +0000 (04:57 +0000)
committerTor Lillqvist <tml@src.gnome.org>
Wed, 1 Mar 2000 04:57:07 +0000 (04:57 +0000)
2000-03-04  Tor Lillqvist  <tml@iki.fi>

* gwin32.c (g_win32_error_message): New function that returns the
message string for a Win32 error code.

* glib.h: Declare it.

* glib.def: Export it, plus g_node_copy.

* gmodule-win32.c: Call g_win32_error_message() to get the error
message strings.

* libgplugin_a.c
* libgplugin_b.c
* gmodule.c: Remove LibMain functions that were needed by LCC,
which is not a supported compiler.

* testgmodule.c (main): Test for G_MODULE_IMPL ==
G_MODULE_IMPL_WIN32, not G_OS_WIN32.

* gmoduleconf.h.win32: Remove LCC stuff from here, too.

gmodule/gmodule-win32.c
gmodule/gmodule.c
gmodule/libgplugin_a.c
gmodule/libgplugin_b.c

index 8d021e109002480ff2a3d8ca76769117f16b6d22..5654ce089faa8c33e7793ff921b01bd4727aa89e 100644 (file)
@@ -1,7 +1,7 @@
 /* GMODULE - GLIB wrapper code for dynamic module loading
  * Copyright (C) 1998, 2000 Tim Janik
  *
- * WIN32 GMODULE implementation
+ * Win32 GMODULE implementation
  * Copyright (C) 1998 Tor Lillqvist
  *
  * This library is free software; you can redistribute it and/or
 #include <stdio.h>
 #include <windows.h>
 
+static void
+set_error (void)
+{
+  gchar *error = g_win32_error_message (GetLastError ());
+
+  g_module_set_error (error);
+  g_free (error);
+}
+
 /* --- functions --- */
 static gpointer
 _g_module_open (const gchar *file_name,
@@ -43,13 +52,8 @@ _g_module_open (const gchar *file_name,
   
   handle = LoadLibrary (file_name);
   if (!handle)
-    {
-      gchar error[100];
+    set_error ();
 
-      sprintf (error, "Error code %d", GetLastError ());
-      g_module_set_error (error);
-    }
-  
   return handle;
 }
 
@@ -60,12 +64,7 @@ _g_module_self (void)
   
   handle = GetModuleHandle (NULL);
   if (!handle)
-    {
-      gchar error[100];
-
-      sprintf (error, "Error code %d", GetLastError ());
-      g_module_set_error (error);
-    }
+    set_error ();
   
   return handle;
 }
@@ -75,12 +74,7 @@ _g_module_close (gpointer handle,
                 gboolean is_unref)
 {
   if (!FreeLibrary (handle))
-    {
-      gchar error[100];
-
-      sprintf (error, "Error code %d", GetLastError ());
-      g_module_set_error (error);
-    }
+    set_error ();
 }
 
 static gpointer
@@ -91,13 +85,8 @@ _g_module_symbol (gpointer     handle,
   
   p = GetProcAddress (handle, symbol_name);
   if (!p)
-    {
-      gchar error[100];
+    set_error ();
 
-      sprintf (error, "Error code %d", GetLastError ());
-      g_module_set_error (error);
-    }
-  
   return p;
 }
 
index dcd04dd950ff711d634905461862bd6a3c24e039..11bd50cc48dd47ecbfd19f5445f987b47ebe0fdd 100644 (file)
@@ -168,17 +168,6 @@ _g_module_build_path (const gchar *directory,
 }
 #endif /* no implementation */
 
-#if defined (NATIVE_WIN32) && defined (__LCC__)
-int __stdcall 
-LibMain (void         *hinstDll,
-        unsigned long dwReason,
-        void         *reserved)
-{
-  return 1;
-}
-#endif /* NATIVE_WIN32 && __LCC__ */
-
-
 /* --- functions --- */
 gboolean
 g_module_supported (void)
index 3da2da4a3075dff7f8f1ad74039db9642499435d..2a4ced70a2fe070bb69391756c573126c15d5f19 100644 (file)
 #include       <gmodule.h>
 #include       <stdlib.h>
 
-#if defined (NATIVE_WIN32) && defined (__LCC__)
-int __stdcall 
-LibMain(void         *hinstDll,
-       unsigned long dwReason,
-       void         *reserved)
-{
-  return 1;
-}
-#endif /* NATIVE_WIN32 && __LCC__ */
-
 G_MODULE_EXPORT void
 gplugin_a_func (void)
 {
index 109e04853cd450a3145568e230ab30c6e41de85b..be2795b66dd92ba102fa18ace099c09dfb7dffab 100644 (file)
 
 #include        <gmodule.h>
 
-#if defined (NATIVE_WIN32) && defined (__LCC__)
-int __stdcall 
-LibMain(void         *hinstDll,
-       unsigned long dwReason,
-       void         *reserved)
-{
-  return 1;
-}
-#endif /* NATIVE_WIN32 && __LCC__ */
-
 G_MODULE_EXPORT const gchar*
 g_module_check_init (GModule *module)
 {