mirror of https://github.com/procxx/kepka.git
Logging crashed string in hexdump ofutf8.
This commit is contained in:
parent
f96b7da7ce
commit
1f6da4c734
|
@ -768,9 +768,24 @@ namespace internal {
|
||||||
|
|
||||||
if (!ReportingHeaderWritten) {
|
if (!ReportingHeaderWritten) {
|
||||||
ReportingHeaderWritten = true;
|
ReportingHeaderWritten = true;
|
||||||
|
auto dec2hex = [](int value) -> char {
|
||||||
|
if (value >= 0 && value < 10) {
|
||||||
|
return '0' + value;
|
||||||
|
} else if (value >= 10 && value < 16) {
|
||||||
|
return 'a' + (value - 10);
|
||||||
|
}
|
||||||
|
return '#';
|
||||||
|
};
|
||||||
|
|
||||||
for (const auto &i : ProcessAnnotationRefs) {
|
for (const auto &i : ProcessAnnotationRefs) {
|
||||||
ProcessAnnotations[i.first] = i.second->toUtf8().constData();
|
QByteArray utf8 = i.second->toUtf8();
|
||||||
|
std::string wrapped;
|
||||||
|
wrapped.reserve(4 * utf8.size());
|
||||||
|
for (auto ch : utf8) {
|
||||||
|
auto uch = static_cast<uchar>(ch);
|
||||||
|
wrapped.append("\\x", 2).append(1, dec2hex(uch >> 4)).append(1, dec2hex(uch & 0x0F));
|
||||||
|
}
|
||||||
|
ProcessAnnotations[i.first] = wrapped;
|
||||||
}
|
}
|
||||||
|
|
||||||
const Annotations c_ProcessAnnotations(ProcessAnnotations);
|
const Annotations c_ProcessAnnotations(ProcessAnnotations);
|
||||||
|
|
Loading…
Reference in New Issue