From 73fa5f2224dbea688d4f088f1f0c930fe6c6ce2a Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sun, 14 Jul 2013 16:01:51 +0200 Subject: [PATCH] std: Fix const handling on Linux and BSD. --- src/std/c_string.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/std/c_string.c b/src/std/c_string.c index 34cd672d3..b853484ad 100644 --- a/src/std/c_string.c +++ b/src/std/c_string.c @@ -88,14 +88,19 @@ enum iconv_direction { iconv_from_native, iconv_to_native }; static char *c_iconv(const char* str, enum iconv_direction dir) { - char *in = (char*)str; +#ifdef HAVE_ICONV_CONST + const char *in = str; +#else + char *in = discard_const(str); +#endif size_t size; size_t outsize; char *out; size_t ret; - if (str == NULL) + if (str == NULL) { return NULL; + } if(_iconvs.from == NULL && _iconvs.to == NULL) { #ifdef __APPLE__