Mercurial > hg > orthanc
diff Core/Toolbox.cpp @ 955:743a75b14bef plugins
merge mainline -> plugins
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 25 Jun 2014 15:37:48 +0200 |
parents | 3fb427ac3f53 8811abd6aec9 |
children | 509e146c3cb3 |
line wrap: on
line diff
--- a/Core/Toolbox.cpp Wed Jun 25 11:51:55 2014 +0200 +++ b/Core/Toolbox.cpp Wed Jun 25 15:37:48 2014 +0200 @@ -66,8 +66,8 @@ #include <boost/locale.hpp> -#include "../Resources/md5/md5.h" -#include "../Resources/base64/base64.h" +#include "../Resources/ThirdParty/md5/md5.h" +#include "../Resources/ThirdParty/base64/base64.h" #ifdef _MSC_VER @@ -495,11 +495,27 @@ std::string Toolbox::ConvertToUtf8(const std::string& source, - const char* fromEncoding) + const Encoding sourceEncoding) { + const char* encoding; + + switch (sourceEncoding) + { + case Encoding_Utf8: + // Already in UTF-8: No conversion is required + return source; + + case Encoding_Latin1: + encoding = "ISO-8859-1"; + break; + + default: + throw OrthancException(ErrorCode_ParameterOutOfRange); + } + try { - return boost::locale::conv::to_utf<char>(source, fromEncoding); + return boost::locale::conv::to_utf<char>(source, encoding); } catch (std::runtime_error&) {