[ox] Add file:line error tracing
This commit is contained in:
12
deps/ox/src/ox/trace/trace.cpp
vendored
12
deps/ox/src/ox/trace/trace.cpp
vendored
@@ -54,4 +54,16 @@ NullStream::NullStream(const char*, int, const char*, const char*) {
|
||||
NullStream::~NullStream() {
|
||||
}
|
||||
|
||||
|
||||
void logError(const char *file, int line, Error err) {
|
||||
if (err) {
|
||||
ErrorInfo ei(err);
|
||||
TraceStream trc(file, line, "ox::error");
|
||||
trc << "\tError:\t" << ei.errCode;
|
||||
if (ei.file != nullptr) {
|
||||
trc << " (" << reinterpret_cast<const char*>(ei.file) << ':' << ei.line << ')';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
8
deps/ox/src/ox/trace/trace.hpp
vendored
8
deps/ox/src/ox/trace/trace.hpp
vendored
@@ -91,6 +91,12 @@ class NullStream {
|
||||
|
||||
};
|
||||
|
||||
using TraceStream = StdOutStream;
|
||||
|
||||
void logError(const char *file, int line, Error err);
|
||||
|
||||
}
|
||||
|
||||
#define oxTrace(ch) ox::trace::StdOutStream(__FILE__, __LINE__, ch)
|
||||
#define oxLogError(err) ox::trace::logError(__FILE__, __LINE__, err)
|
||||
|
||||
#define oxTrace(ch) ox::trace::TraceStream(__FILE__, __LINE__, ch)
|
||||
|
Reference in New Issue
Block a user