Index: include/log4cxx/stream.h =================================================================== --- include/log4cxx/stream.h (revision 397269) +++ include/log4cxx/stream.h (working copy) @@ -151,7 +151,13 @@ ::log4cxx::logstream& lhs, const char* rhs); +#if LOG4CXX_LOGCHAR_IS_WCHAR LOG4CXX_EXPORT ::log4cxx::logstream& operator<<( + ::log4cxx::logstream& lhs, + const std::string& rhs); +#endif + +LOG4CXX_EXPORT ::log4cxx::logstream& operator<<( ::log4cxx::logstream& lhs, const ::log4cxx::LogString& rhs); Index: src/logstream.cpp =================================================================== --- src/logstream.cpp (revision 397269) +++ src/logstream.cpp (working copy) @@ -37,6 +37,17 @@ } #endif +#if LOG4CXX_LOGCHAR_IS_WCHAR +log4cxx::logstream& operator<<( + ::log4cxx::logstream& lhs, + const std::string& rhs) { + LOG4CXX_DECODE_CHAR(tmp, rhs); + LOG4CXX_ENCODE_WCHAR(msg, tmp); + lhs.getStream() << msg; + return lhs; +} +#endif + #if LOG4CXX_HAS_WCHAR_T log4cxx::logstream& operator<<( ::log4cxx::logstream& lhs,