diff options
author | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2008-01-17 18:56:38 (GMT) |
---|---|---|
committer | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2008-01-17 18:56:38 (GMT) |
commit | f000dd870b772ed6bc26ea383a8657301eb5ef17 (patch) | |
tree | 05e55417a750c1275c9139b7952de6941db168dd /src/portable.cpp | |
parent | b00ec8923dcf911a38323429f1744048b20a35a7 (diff) | |
download | Doxygen-f000dd870b772ed6bc26ea383a8657301eb5ef17.zip Doxygen-f000dd870b772ed6bc26ea383a8657301eb5ef17.tar.gz Doxygen-f000dd870b772ed6bc26ea383a8657301eb5ef17.tar.bz2 |
Release-1.5.4-20080101
Diffstat (limited to 'src/portable.cpp')
-rw-r--r-- | src/portable.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/portable.cpp b/src/portable.cpp index 174fa20..59484b2 100644 --- a/src/portable.cpp +++ b/src/portable.cpp @@ -377,7 +377,12 @@ void * portable_iconv_open(const char* tocode, const char* fromcode) size_t portable_iconv (void *cd, const char** inbuf, size_t *inbytesleft, char** outbuf, size_t *outbytesleft) { -#if ((defined(_LIBICONV_VERSION) && (_LIBICONV_VERSION>=0x0109)) || defined(_OS_SOLARIS_)) +// libiconv is a mess. For some platforms/version the prototype of inbuf is +// "const char **", for others it is "char **". C++ requires the proper cast to +// avoid a compile error, that is were the CASTNEEDED is for. +#if ((defined(_LIBICONV_VERSION) && (_LIBICONV_VERSION>=0x0109) && \ + !((defined(_OS_MAC_) || defined(Q_OS_MACX) )&& (_LIBICONV_VERSION==0x010B))) \ + || defined(_OS_SOLARIS_)) #define CASTNEEDED(x) (x) #else #define CASTNEEDED(x) (char **)(x) |