fixed GH #138: FreeBSD JSON tests fail

This commit is contained in:
alex
2013-06-02 23:36:36 -05:00
parent 6184be0025
commit 83ad8b36f5
4 changed files with 8 additions and 5 deletions

View File

@@ -75,6 +75,8 @@ Release 1.5.2 (2013-06-xx)
- fixed GH #198: The "application.configDir" property is not always created. - fixed GH #198: The "application.configDir" property is not always created.
- fixed GH #185: Poco::NumberFormatter::format(double value, int precision) - fixed GH #185: Poco::NumberFormatter::format(double value, int precision)
ignore precision == 0 ignore precision == 0
- fixed GH #138: FreeBSD JSON tests fail
Release 1.5.1 (2013-01-11) Release 1.5.1 (2013-01-11)
========================== ==========================

View File

@@ -81,7 +81,7 @@
// http://dbp-consulting.com/tutorials/SuppressingGCCWarnings.html // http://dbp-consulting.com/tutorials/SuppressingGCCWarnings.html
// use example: GCC_DIAG_OFF(unused-variable) // use example: GCC_DIAG_OFF(unused-variable)
// //
#if defined(POCO_COMPILER_GCC) && (((__GNUC__ * 100) + __GNUC_MINOR__) >= 402) #if defined(POCO_COMPILER_GCC) && (((__GNUC__ * 100) + __GNUC_MINOR__) >= 460)
#ifdef GCC_DIAG_OFF #ifdef GCC_DIAG_OFF
#undef GCC_DIAG_OFF #undef GCC_DIAG_OFF

View File

@@ -91,4 +91,5 @@ CppUnit::Test* UnicodeConverterTest::suite()
} }
#endif #endif

View File

@@ -335,14 +335,14 @@ private:
unsigned char ch = static_cast<unsigned char>(CharTraits::to_char_type(nextChar)); unsigned char ch = static_cast<unsigned char>(CharTraits::to_char_type(nextChar));
// Determine the character's class. // Determine the character's class.
if (ch < 0 || (!_allowNullByte && ch == 0)) return false; if ((!_allowNullByte && ch == 0)) return false;
if (0x80 <= ch && ch <= 0xFF) if (ch >= 0x80)
{ {
nextClass = C_ETC; nextClass = C_ETC;
CharIntType count = utf8CheckFirst(nextChar); CharIntType count = utf8CheckFirst(nextChar);
if (!count) if (!count)
{ {
throw Poco::JSON::JSONException(format("Unable to decode byte 0x%x", (unsigned int) nextChar)); throw Poco::JSON::JSONException("Bad character.");
} }
char buffer[4]; char buffer[4];