$NetBSD: patch-html_CharsetConverter.cc,v 1.3 2024/06/16 18:55:44 wiz Exp $ Fix build on NetBSD. Fix build with c++11, from https://sourceforge.net/p/htmlcxx/patches/8/ --- html/CharsetConverter.cc.orig 2011-05-15 17:32:10.000000000 +0000 +++ html/CharsetConverter.cc @@ -4,10 +4,19 @@ #include #include "CharsetConverter.h" +#if defined(__NetBSD__) +#include +#if __NetBSD_Prereq__(9,99,17) +#define NETBSD_POSIX_ICONV 1 +#else +#define NETBSD_POSIX_ICONV 0 +#endif +#endif + using namespace std; using namespace htmlcxx; -CharsetConverter::CharsetConverter(const string &from, const string &to) throw (Exception) +CharsetConverter::CharsetConverter(const string &from, const string &to) { mIconvDescriptor = iconv_open(to.c_str(), from.c_str()); if (mIconvDescriptor == (iconv_t)(-1)) @@ -37,7 +46,11 @@ string CharsetConverter::convert(const s size_t ret; while (1) { +#if (defined(__NetBSD__) && !NETBSD_POSIX_ICONV) + ret = iconv(mIconvDescriptor, (const char**)(&inbuf), &inbytesleft, &outbuf, &outbytesleft); +#else ret = iconv(mIconvDescriptor, const_cast(&inbuf), &inbytesleft, &outbuf, &outbytesleft); +#endif if (ret == 0) break; if (ret == (size_t)-1 && errno == E2BIG) return string();