+2005-03-24 Marcus Brinkmann <marcus@g10code.de>
+
+ * gpgme.texi (Library Version Check): Make example code compatible
+ to W32 systems.
+
2006-06-21 Marcus Brinkmann <marcus@g10code.de>
* gpgme.texi (Passphrase Callback): Fix inverted condition in
setlocale (LC_ALL, "");
gpgme_check_version (NULL);
gpgme_set_locale (NULL, LC_CTYPE, setlocale (LC_CTYPE, NULL));
+#ifdef LC_MESSAGES
gpgme_set_locale (NULL, LC_MESSAGES, setlocale (LC_MESSAGES, NULL));
+#endif
@}
@end example
Note that you are highly recommended to initialize the locale settings
like this. @acronym{GPGME} can not do this for you because it would
-not be thread safe.
+not be thread safe. The conditional on LC_MESSAGES is only necessary
+for portability to W32 systems.
@node Signal Handling
+2005-03-24 Marcus Brinkmann <marcus@g10code.de>
+
+ * gpgme.c (gpgme_set_locale): Remove conditional on
+ HAVE_W32_SYSTEM, and just check for LC_MESSAGES.
+
2006-07-16 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (read_status): Strip potential carriage return.
/* gpgme.c - GnuPG Made Easy.
Copyright (C) 2000 Werner Koch (dd9jn)
- Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
+ Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
This file is part of GPGME.
gpgme_error_t
gpgme_set_locale (gpgme_ctx_t ctx, int category, const char *value)
{
-#ifndef HAVE_W32_SYSTEM
int failed = 0;
- char *new_lc_ctype;
- char *new_lc_messages;
+ char *new_lc_ctype = NULL;
+ char *new_lc_messages = NULL;
#define PREPARE_ONE_LOCALE(lcat, ucat) \
if (!failed && value \
new_lc_ ## lcat = strdup (value); \
if (!new_lc_ ## lcat) \
failed = 1; \
- } \
- else \
- new_lc_ ## lcat = NULL;
+ }
PREPARE_ONE_LOCALE (ctype, CTYPE);
+#ifdef LC_MESSAGES
PREPARE_ONE_LOCALE (messages, MESSAGES);
+#endif
if (failed)
{
if (!ctx)
LOCK (def_lc_lock);
SET_ONE_LOCALE (ctype, CTYPE);
+#ifdef LC_MESSAGES
SET_ONE_LOCALE (messages, MESSAGES);
+#endif
if (!ctx)
UNLOCK (def_lc_lock);
-#endif /*!HAVE_W32_SYSTEM*/
-
return 0;
}