aboutsummaryrefslogtreecommitdiff
path: root/src/base/io/Stream.cpp
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-10-17 21:50:24 +0800
committerYuqian Yang <crupest@crupest.life>2025-10-17 21:50:24 +0800
commit728d592f4075ae78b67dab6911ada05875a470a3 (patch)
tree57a7232ea0a984b0344bc63a593c1dee65072d2f /src/base/io/Stream.cpp
parent045462a6aed2796976a2f5cf0042f9a0ac1493f7 (diff)
downloadcru-728d592f4075ae78b67dab6911ada05875a470a3.tar.gz
cru-728d592f4075ae78b67dab6911ada05875a470a3.tar.bz2
cru-728d592f4075ae78b67dab6911ada05875a470a3.zip
Fix macOS build.
Diffstat (limited to 'src/base/io/Stream.cpp')
-rw-r--r--src/base/io/Stream.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/base/io/Stream.cpp b/src/base/io/Stream.cpp
index 1aafc839..e07f2899 100644
--- a/src/base/io/Stream.cpp
+++ b/src/base/io/Stream.cpp
@@ -1,7 +1,9 @@
#include "cru/base/io/Stream.h"
#include "cru/base/Exception.h"
+#include <algorithm>
#include <format>
+#include <iterator>
#include <utility>
namespace cru::io {
@@ -193,6 +195,10 @@ Buffer Stream::ReadToEnd(Index grow_size) {
std::string Stream::ReadToEndAsUtf8String() {
auto buffer = ReadToEnd();
- return std::string(buffer.GetUsedBeginPtr(), buffer.GetUsedEndPtr());
+ std::string result;
+ std::transform(buffer.GetUsedBeginPtr(), buffer.GetUsedEndPtr(),
+ std::back_inserter(result),
+ [](std::byte c) { return static_cast<char>(c); });
+ return result;
}
} // namespace cru::io