summaryrefslogtreecommitdiff
path: root/external/boost/boost.between.warning.patch
blob: 349a9065ce623aca4123770dcadd51f3e178cb9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
diff -ru boost.orig/boost/libs/locale/src/encoding/codepage.cpp boost/boost/libs/locale/src/encoding/codepage.cpp
--- foo/misc/boost.orig/libs/locale/src/encoding/codepage.cpp
+++ foo/misc/boost/libs/locale/src/boost/locale/encoding/codepage.cpp
@@ -8,6 +8,7 @@
 #include <boost/locale/hold_ptr.hpp>
 #include <memory>
 #include <string>
+#include <string.h>
 
 #include "boost/locale/encoding/conv.hpp"
 #if BOOST_LOCALE_USE_WIN32_API
@@ -58,6 +58,9 @@
                 return cvt->convert(begin, end);
 #endif
 #endif
+            // ensures we get a sensible warning in boost's gettext results about a real mismatch.
+            if (to_charset && from_charset && !strcmp(to_charset, from_charset))
+                return std::string(begin, end - begin);
             throw invalid_charset_error(std::string(to_charset) + " or " + from_charset);
         }