Skip to content

Commit a1884a2

Browse files
authored
update fcitx5 and patch osyncstream (#73)
1 parent 6c8476d commit a1884a2

File tree

2 files changed

+42
-1
lines changed

2 files changed

+42
-1
lines changed

fcitx5

Submodule fcitx5 updated 48 files

patches/fcitx5.patch

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,44 @@
1+
diff --git a/src/lib/fcitx-utils/log.cpp b/src/lib/fcitx-utils/log.cpp
2+
index 56fb7f62..98fa2ae6 100644
3+
--- a/src/lib/fcitx-utils/log.cpp
4+
+++ b/src/lib/fcitx-utils/log.cpp
5+
@@ -35,16 +35,20 @@ using LogRule = std::pair<std::string, LogLevel>;
6+
7+
struct LogConfig {
8+
static std::ostream *defaultLogStream;
9+
+#if 0
10+
static thread_local std::osyncstream localLogStream;
11+
+#endif
12+
static bool showTimeDate;
13+
};
14+
15+
std::ostream *LogConfig::defaultLogStream = &std::cerr;
16+
+#if 0
17+
thread_local std::osyncstream LogConfig::localLogStream = []() {
18+
std::osyncstream out(*LogConfig::defaultLogStream);
19+
out.rdbuf()->set_emit_on_sync(true);
20+
return out;
21+
}();
22+
+#endif
23+
bool LogConfig::showTimeDate = true;
24+
25+
bool validateLogLevel(std::underlying_type_t<LogLevel> l) {
26+
@@ -199,12 +203,15 @@ void Log::setLogStream(std::ostream &stream) {
27+
}
28+
29+
std::ostream &Log::logStream() {
30+
+#if 0
31+
auto *buf = LogConfig::defaultLogStream->rdbuf();
32+
if (LogConfig::localLogStream.get_wrapped() != buf) {
33+
LogConfig::localLogStream = std::osyncstream(buf);
34+
LogConfig::localLogStream.rdbuf()->set_emit_on_sync(true);
35+
}
36+
return LogConfig::localLogStream;
37+
+#endif
38+
+ return *LogConfig::defaultLogStream;
39+
}
40+
41+
LogMessageBuilder::LogMessageBuilder(std::ostream &out, LogLevel l,
142
diff --git a/src/lib/fcitx/addonmanager.cpp b/src/lib/fcitx/addonmanager.cpp
243
index ab4e36f4..48001b4e 100644
344
--- a/src/lib/fcitx/addonmanager.cpp

0 commit comments

Comments
 (0)