已合并
[bugfix]修复超长日志打印错误 #247
[bugfix]修复超长日志打印错误 #247
已合并
流栎创建于 8月7日
1 个文件变更+5-2
@@ -78,8 +78,11 @@ void Log::Printf(const char* file, int line, const std::string &format, LogLv lv
78 fprintf(fp_, "%s", msg);78 fprintf(fp_, "%s", msg);
79 return;79 return;
80 }80 }
81- std::string lengthLimit = AddPrefixInfo(file, line,81+ // 截断时 securec 不清空缓冲,msg 中已包含被截断的前缀+内容,原样打印后再补截断提示
82- "Log length reach limit, message truncated", lv).append("\n");82+ msg[MAX_PRINT - 1] = '\0';
83+ fprintf(fp_, "%s\n", msg);
84+ std::string lengthLimit =
85+ AddPrefixInfo(file, line, "Log length reach limit, message truncated", LogLv::WARN).append("\n");
83 fprintf(fp_, "%s", lengthLimit.c_str());86 fprintf(fp_, "%s", lengthLimit.c_str());
84}87}
85 88