diff options
author | Yuqian Yang <crupest@crupest.life> | 2025-08-31 22:15:17 +0800 |
---|---|---|
committer | Yuqian Yang <crupest@crupest.life> | 2025-08-31 22:15:17 +0800 |
commit | 5035f18f44f675af2faa4019b6de14b3f3aab270 (patch) | |
tree | ca3d89608ea96b123723ffe8e323ebb45530aec7 /src/base/Exception.cpp | |
parent | a53fc98afc6cf3dbccde265d895e26346b6f537f (diff) | |
download | cru-5035f18f44f675af2faa4019b6de14b3f3aab270.tar.gz cru-5035f18f44f675af2faa4019b6de14b3f3aab270.tar.bz2 cru-5035f18f44f675af2faa4019b6de14b3f3aab270.zip |
Use utf8 message in cru::Exception.
Diffstat (limited to 'src/base/Exception.cpp')
-rw-r--r-- | src/base/Exception.cpp | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/base/Exception.cpp b/src/base/Exception.cpp index 19938970..1e3813a9 100644 --- a/src/base/Exception.cpp +++ b/src/base/Exception.cpp @@ -5,22 +5,21 @@ #include <cerrno> namespace cru { -Exception::Exception(String message, std::unique_ptr<std::exception> inner) +Exception::Exception(std::string message, std::unique_ptr<std::exception> inner) : message_(std::move(message)), inner_(std::move(inner)) {} +Exception::Exception(StringView message, std::unique_ptr<std::exception> inner) + : message_(message.ToUtf8()), inner_(std::move(inner)) {} + Exception::~Exception() {} const char* Exception::what() const noexcept { - if (!message_.empty() && utf8_message_.empty()) { - utf8_message_ = message_.ToUtf8(); - } - - return utf8_message_.c_str(); + return message_.c_str(); } void Exception::AppendMessage(StringView additional_message) { - message_ += u" "; - message_ += additional_message; + message_ += " "; + message_ += additional_message.ToUtf8(); } void Exception::AppendMessage(std::optional<StringView> additional_message) { |