aboutsummaryrefslogtreecommitdiffstats
path: root/src/charset.c
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2008-10-02 19:02:07 +0200
committerMax Kellermann <max@duempel.org>2008-10-02 19:02:07 +0200
commit2fa18f35d878e280bbd8299aa4048bb59e183165 (patch)
treec7e7bdda00f506d795faa3af5ce4662d87e766a1 /src/charset.c
parentfe84050389a15b45ee8071ebdc85488d8d3d36b4 (diff)
downloadmpd-2fa18f35d878e280bbd8299aa4048bb59e183165.tar.gz
mpd-2fa18f35d878e280bbd8299aa4048bb59e183165.tar.xz
mpd-2fa18f35d878e280bbd8299aa4048bb59e183165.zip
fix compiler errors without locale.h
The code did not compile when HAVE_LOCALE_H was not set. Also don't compile all that code in charset.c, when there is no locale.h.
Diffstat (limited to 'src/charset.c')
-rw-r--r--src/charset.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/charset.c b/src/charset.c
index 42c0e6034..095817d15 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -23,6 +23,7 @@
#include <string.h>
#include <glib.h>
+#ifdef HAVE_LOCALE_H
static bool noconvert = true;
static const char *charset;
@@ -31,13 +32,16 @@ charset_init(void)
{
noconvert = g_get_charset(&charset);
return charset;
+ return NULL;
}
+#endif
unsigned
utf8_width(const char *str)
{
assert(str != NULL);
+#ifdef HAVE_LOCALE_H
if (g_utf8_validate(str, -1, NULL)) {
size_t len = g_utf8_strlen(str, -1);
unsigned width = 0;
@@ -51,12 +55,14 @@ utf8_width(const char *str)
return width;
} else
+#endif
return strlen(str);
}
char *
utf8_to_locale(const char *utf8str)
{
+#ifdef HAVE_LOCALE_H
gchar *str;
GError *error;
@@ -75,11 +81,15 @@ utf8_to_locale(const char *utf8str)
}
return str;
+#else
+ return g_strdup(utf8str);
+#endif
}
char *
locale_to_utf8(const char *localestr)
{
+#ifdef HAVE_LOCALE_H
gchar *str;
GError *error;
@@ -98,4 +108,7 @@ locale_to_utf8(const char *localestr)
}
return str;
+#else
+ return g_strdup(localestr);
+#endif
}