diff options
author | Vincent Richard <[email protected]> | 2014-01-15 23:27:51 +0000 |
---|---|---|
committer | Vincent Richard <[email protected]> | 2014-01-15 23:27:51 +0000 |
commit | ef892af6556724b6d04dfb1767dce132f9d97257 (patch) | |
tree | dee732540e681ad58c4f6835c2d960238bf20b26 /examples/example2.cpp | |
parent | Avoid calling charset::convert() if no conversion is needed. (diff) | |
download | vmime-ef892af6556724b6d04dfb1767dce132f9d97257.tar.gz vmime-ef892af6556724b6d04dfb1767dce132f9d97257.zip |
Do not make calls to setlocale() in a library. Use default user locale in tests and examples.
Diffstat (limited to 'examples/example2.cpp')
-rw-r--r-- | examples/example2.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/examples/example2.cpp b/examples/example2.cpp index 56f01b03..67b8d844 100644 --- a/examples/example2.cpp +++ b/examples/example2.cpp @@ -32,6 +32,8 @@ // #include <iostream> +#include <locale> +#include <clocale> #include "vmime/vmime.hpp" #include "vmime/platforms/posix/posixHandler.hpp" @@ -41,8 +43,16 @@ int main() { std::cout << std::endl; - // VMime initialization - vmime::platform::setHandler<vmime::platforms::posix::posixHandler>(); + // Set the global C and C++ locale to the user-configured locale. + // The locale should use UTF-8 encoding for these tests to run successfully. + try + { + std::locale::global(std::locale("")); + } + catch (std::exception &) + { + std::setlocale(LC_ALL, ""); + } try { @@ -71,7 +81,7 @@ int main() // Adding an attachment vmime::shared_ptr <vmime::fileAttachment> a = vmime::make_shared <vmime::fileAttachment> ( - "./example2.cpp", // full path to file + __FILE__, // full path to file vmime::mediaType("application/octet-stream"), // content type vmime::text("My first attachment") // description ); |