summaryrefslogtreecommitdiff
path: root/poptint.c
diff options
context:
space:
mode:
authorjbj <jbj>2008-02-16 16:31:36 +0000
committerjbj <jbj>2008-02-16 16:31:36 +0000
commit2af8e4e896b73d2c40ab68662bb00329adb21398 (patch)
treefeeead5005d2f26d1d3d5e6551dec732446ad25f /poptint.c
parent4207addee54a670eef554512e7a95bad5a049f0f (diff)
downloadlibpopt-2af8e4e896b73d2c40ab68662bb00329adb21398.tar.gz
- jbj: add POPT_dgettext() for popt internal UTF-8 codeset (Takao Fujiwara).
Diffstat (limited to 'poptint.c')
-rw-r--r--poptint.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/poptint.c b/poptint.c
index 872f793..a221025 100644
--- a/poptint.c
+++ b/poptint.c
@@ -2,6 +2,27 @@
#include <stdarg.h>
#include "poptint.h"
+#if defined(HAVE_DCGETTEXT) && !defined(__LCLINT__)
+/*
+ * Rebind a "UTF-8" codeset for popt's internal use.
+ */
+char *
+POPT_dgettext(const char * dom, const char * str)
+{
+ char * codeset = NULL;
+ char * retval = NULL;
+
+ if (!dom)
+ dom = textdomain(NULL);
+ codeset = bind_textdomain_codeset(dom, NULL);
+ bind_textdomain_codeset(dom, "UTF-8");
+ retval = dgettext(dom, str);
+ bind_textdomain_codeset(dom, codeset);
+
+ return retval;
+}
+#endif
+
#ifdef HAVE_ICONV
static /*@only@*/ /*@null@*/ char *
strdup_locale_from_utf8 (/*@null@*/ char *buffer)