feat: add process termination codes and SYS_ABORT; whole-process abort() from any thread in libc and montauk-rt
This commit is contained in:
1 parent
f8b8f9610f
commit
278b208258
15 files changed
+126
-37
No files matched your search
@@ -23,9 +23,9 @@ static void print_exit_code(const int exitCode) {
|
||||
if (code == 0) return;
|
||||
char buf[16];
|
||||
int n = 0;
|
||||
if (code >= 256) {
|
||||
if (code >= montauk::TerminationBase) {
|
||||
montauk::print("[terminated by signal ");
|
||||
code -= 256;
|
||||
code -= montauk::TerminationBase;
|
||||
} else {
|
||||
montauk::print("[exit code ");
|
||||
}
|
||||
@@ -39,13 +39,16 @@ static void print_exit_code(const int exitCode) {
|
||||
montauk::print(c);
|
||||
}
|
||||
|
||||
if (exitCode > 0 && exitCode <= montauk::MaxStatusCode) {
|
||||
const char* statusText = montauk::GetStatusText((montauk::StatusCode)exitCode);
|
||||
|
||||
if (statusText != nullptr) {
|
||||
montauk::print(" - ");
|
||||
montauk::print(statusText);
|
||||
}
|
||||
const char* statusText = nullptr;
|
||||
if (exitCode >= montauk::TerminationBase) {
|
||||
statusText = montauk::GetTerminationText(exitCode);
|
||||
} else if (exitCode > 0 && exitCode <= montauk::MaxStatusCode) {
|
||||
statusText = montauk::GetStatusText((montauk::StatusCode)exitCode);
|
||||
}
|
||||
|
||||
if (statusText != nullptr) {
|
||||
montauk::print(" - ");
|
||||
montauk::print(statusText);
|
||||
}
|
||||
|
||||
montauk::print("]\n");
|
||||
|
||||
Reference in new issue
Block a user