aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2015-04-10 08:52:24 +0000
committerWerner Koch <[email protected]>2015-04-10 08:53:58 +0000
commiteaec10f48803ee2232d1c1515fbe8f485c1e84b0 (patch)
tree3338689dfec07ceabdd2b36ba3f072765263bff6
parentUse assert to print diagnosicts before calling abort. (diff)
downloadlibgpg-error-eaec10f48803ee2232d1c1515fbe8f485c1e84b0.tar.gz
libgpg-error-eaec10f48803ee2232d1c1515fbe8f485c1e84b0.zip
w32: Remove compiler warnings.
* src/Makefile.am (pre_mkheader_cmds): Avoid make diagnostic about failed but ignored command. This confuses Emacs' compiler job parser. * tests/t-lock.c [W32]: Include time.h. * src/init.c: Reorganize Windows only code. (wchar_to_utf8, utf8_to_wchar): Remove unused functions. (_gpg_err_set_errno): Use only one copy for all platforms. -- Note that there is a still a problem for W64 pertaining to the use of an int to store a HANDLE. This will be fixed when we add a full abstraction layer for Windows file objects.
-rw-r--r--doc/errorref.txt8
-rw-r--r--src/Makefile.am3
-rw-r--r--src/init.c93
-rw-r--r--tests/t-lock.c1
4 files changed, 23 insertions, 82 deletions
diff --git a/doc/errorref.txt b/doc/errorref.txt
index 0393f16..2ee1aa4 100644
--- a/doc/errorref.txt
+++ b/doc/errorref.txt
@@ -282,7 +282,13 @@ GPG_ERR_INV_DATA Invalid data
expected.
80 GPG_ERR_ASSUAN_SERVER_FAULT Unspecific Assuan server fault
-81 GPG_ERR_ASSUAN General Assuan error
+
+GPG_ERR_ASSUAN General Assuan error
+
+ GNUPG: - Used by Assuan command handler if they fail to do basic
+ things like an es_fdopen or es_fopencookie.
+
+
82 GPG_ERR_INV_SESSION_KEY Invalid session key
83 GPG_ERR_INV_SEXP Invalid S-expression
84 GPG_ERR_UNSUPPORTED_ALGORITHM Unsupported algorithm
diff --git a/src/Makefile.am b/src/Makefile.am
index f847a80..e038d7f 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -276,7 +276,8 @@ parts_of_gpg_error_h = \
# If we are cross-compiling or building on Windows we better make sure
# that no stale native lock include file will be found by mkheader.
if FORCE_USE_SYSCFG
-pre_mkheader_cmds = -rm lock-obj-pub.native.h 2>/dev/null
+pre_mkheader_cmds = if test -f lock-obj-pub.native.h; \
+ then rm lock-obj-pub.native.h; fi
else
pre_mkheader_cmds = :
parts_of_gpg_error_h += ./lock-obj-pub.native.h
diff --git a/src/init.c b/src/init.c
index 6305fe3..e84b234 100644
--- a/src/init.c
+++ b/src/init.c
@@ -202,70 +202,22 @@ _gpgrt_free (void *a)
}
-
-
-#ifdef HAVE_W32_SYSTEM
-
-/* Return a malloced string encoded in UTF-8 from the wide char input
- string STRING. Caller must free this value. Returns NULL on
- failure. Caller may use GetLastError to get the actual error
- number. The result of calling this function with STRING set to
- NULL is not defined. */
-static char *
-wchar_to_utf8 (const wchar_t *string)
+void
+_gpg_err_set_errno (int err)
{
- int n;
- char *result;
-
- /* Note, that CP_UTF8 is not defined in Windows versions earlier
- than NT. */
- n = WideCharToMultiByte (CP_UTF8, 0, string, -1, NULL, 0, NULL, NULL);
- if (n < 0)
- return NULL;
-
- result = malloc (n+1);
- if (result)
- {
- n = WideCharToMultiByte (CP_UTF8, 0, string, -1, result, n, NULL, NULL);
- if (n < 0)
- {
- free (result);
- result = NULL;
- }
- }
- return result;
+#ifdef HAVE_W32CE_SYSTEM
+ SetLastError (err);
+#else /*!HAVE_W32CE_SYSTEM*/
+ errno = err;
+#endif /*!HAVE_W32CE_SYSTEM*/
}
-/* Return a malloced wide char string from an UTF-8 encoded input
- string STRING. Caller must free this value. Returns NULL on
- failure. Caller may use GetLastError to get the actual error
- number. The result of calling this function with STRING set to
- NULL is not defined. */
-static wchar_t *
-utf8_to_wchar (const char *string)
-{
- int n;
- wchar_t *result;
-
- n = MultiByteToWideChar (CP_UTF8, 0, string, -1, NULL, 0);
- if (n < 0)
- return NULL;
-
- result = malloc ((n+1) * sizeof *result);
- if (result)
- {
- n = MultiByteToWideChar (CP_UTF8, 0, string, -1, result, n);
- if (n < 0)
- {
- free (result);
- result = NULL;
- }
- return NULL;
- }
- return result;
-}
-
+
+#ifdef HAVE_W32_SYSTEM
+/*****************************************
+ ******** Below is only Windows code. ****
+ *****************************************/
static char *
get_locale_dir (void)
@@ -419,17 +371,6 @@ _gpg_w32ce_strerror (int err)
#endif /*HAVE_W32CE_SYSTEM*/
-void
-_gpg_err_set_errno (int err)
-{
-#ifdef HAVE_W32CE_SYSTEM
- SetLastError (err);
-#else /*!HAVE_W32CE_SYSTEM*/
- errno = err;
-#endif /*!HAVE_W32CE_SYSTEM*/
-}
-
-
/* Entry point called by the DLL loader. */
#ifdef DLL_EXPORT
int WINAPI
@@ -483,12 +424,4 @@ DllMain (HINSTANCE hinst, DWORD reason, LPVOID reserved)
}
#endif /*DLL_EXPORT*/
-#else /*!HAVE_W32_SYSTEM*/
-
-void
-_gpg_err_set_errno (int err)
-{
- errno = err;
-}
-
-#endif /*!HAVE_W32_SYSTEM*/
+#endif /*HAVE_W32_SYSTEM*/
diff --git a/tests/t-lock.c b/tests/t-lock.c
index 5a21666..fd645eb 100644
--- a/tests/t-lock.c
+++ b/tests/t-lock.c
@@ -29,6 +29,7 @@
#include <unistd.h>
#ifdef _WIN32
# include <windows.h>
+# include <time.h>
#else
# include <pthread.h>
#endif