Index: charsetdecoder.cpp
===================================================================
--- charsetdecoder.cpp	(.../thirdparty/log4cxx/0.9.8/linux/x86_64/src/charsetdecoder.cpp)	(revision 774)
+++ charsetdecoder.cpp	(.../trunk/thirdparty/log4cxx/0.9.8/linux/x86_64/src/charsetdecoder.cpp)	(working copy)
@@ -19,8 +19,8 @@
 #include <log4cxx/helpers/exception.h>
 #include <log4cxx/helpers/unicodehelper.h>
 #include <apr_xlate.h>
+#include <locale.h>
 
-
 using namespace log4cxx;
 using namespace log4cxx::helpers;
 
@@ -51,6 +51,12 @@
 #if LOG4CXX_LOGCHAR_IS_UTF8
                 const char* topage = "UTF-8";
 #endif
+
+                // fix up the inconsitency in the behavior
+                // of nl_langinfo; it's used by APRCharsetDecoder
+                // to determine the charset used by the system
+                setlocale(LC_ALL, "");
+
                 apr_status_t stat = apr_pool_create(&pool, NULL);
                 if (stat != APR_SUCCESS) {
                     throw PoolException(stat);
