[PATCH] No point in trying to use iconv if we don't have nl_langinfo
Jon TURNEY
jon.turney at dronecode.org.uk
Tue Apr 21 05:44:42 PDT 2015
Signed-off-by: Jon TURNEY <jon.turney at dronecode.org.uk>
---
Clock.c | 18 +++++++++---------
configure.ac | 2 +-
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/Clock.c b/Clock.c
index 8af0045..35416d4 100644
--- a/Clock.c
+++ b/Clock.c
@@ -87,7 +87,7 @@ SOFTWARE.
#include <stdio.h>
#include <X11/Xos.h>
#include <X11/Xaw/XawInit.h>
-#if !defined(NO_I18N) && defined(HAVE_ICONV)
+#if !defined(NO_I18N) && defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
#include <iconv.h>
#include <langinfo.h>
#include <errno.h>
@@ -226,7 +226,7 @@ static void DrawClockFace ( ClockWidget w );
static int clock_round ( double x );
static Boolean SetValues ( Widget gcurrent, Widget grequest, Widget gnew,
ArgList args, Cardinal *num_args );
-#if !defined(NO_I18N) && defined(HAVE_ICONV)
+#if !defined(NO_I18N) && defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
static char *clock_to_utf8(const char *str, int in_len);
#endif
@@ -623,13 +623,13 @@ Initialize (Widget request, Widget new, ArgList args, Cardinal *num_args)
{
XGlyphInfo extents;
#ifndef NO_I18N
-# ifdef HAVE_ICONV
+# if defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
char *utf8_str;
# endif
if (w->clock.utf8)
XftTextExtentsUtf8 (XtDisplay (w), w->clock.face,
(FcChar8 *) str, len, &extents);
-# ifdef HAVE_ICONV
+# if defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
else if ((utf8_str = clock_to_utf8(str, len)) != NULL) {
XftTextExtentsUtf8 (XtDisplay (w), w->clock.face,
(FcChar8 *)utf8_str, strlen(utf8_str), &extents);
@@ -814,7 +814,7 @@ RenderTextBounds (ClockWidget w, char *str, int off, int len,
int x, y;
#ifndef NO_I18N
-# ifdef HAVE_ICONV
+# if defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
char *utf8_str;
# endif
if (w->clock.utf8)
@@ -824,7 +824,7 @@ RenderTextBounds (ClockWidget w, char *str, int off, int len,
XftTextExtentsUtf8 (XtDisplay (w), w->clock.face,
(FcChar8 *) str + off, len - off, &tail);
}
-# ifdef HAVE_ICONV
+# if defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
else if ((utf8_str = clock_to_utf8(str, off)) != NULL)
{
XftTextExtentsUtf8 (XtDisplay (w), w->clock.face,
@@ -1421,7 +1421,7 @@ clock_tic(XtPointer client_data, XtIntervalId *id)
{
XRectangle old_tail, new_tail, head;
int x, y;
-#if !defined(NO_I18N) && defined(HAVE_ICONV)
+#if !defined(NO_I18N) && defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
char *utf8_str;
#endif
@@ -1451,7 +1451,7 @@ clock_tic(XtPointer client_data, XtIntervalId *id)
(FcChar8 *) time_ptr + i, len - i);
}
-# ifdef HAVE_ICONV
+# if defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
else if ((utf8_str =
clock_to_utf8(time_ptr + i, len - i)) != NULL) {
XftDrawStringUtf8 (w->clock.draw,
@@ -2206,7 +2206,7 @@ SetValues(Widget gcurrent, Widget grequest, Widget gnew,
}
-#if !defined(NO_I18N) && defined(HAVE_ICONV)
+#if !defined(NO_I18N) && defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
static char *
clock_to_utf8(const char *str, int in_len)
{
diff --git a/configure.ac b/configure.ac
index 398c236..af458d9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -39,7 +39,7 @@ m4_ifndef([XORG_MACROS_VERSION],
XORG_MACROS_VERSION(1.8)
XORG_DEFAULT_OPTIONS
-AC_CHECK_FUNCS([strlcpy getpid])
+AC_CHECK_FUNCS([strlcpy getpid nl_langinfo])
AM_ICONV
--
2.3.5
More information about the xorg-devel
mailing list