Print stack trace on assert() failure or when calling fatal_error()

Note: this uses the __sanitizer_print_stack_trace() function from the
AddressSanitizer runtime, so it only works when AddressSanitizer is
in use.
This commit is contained in:
Craig Barnes 2021-01-15 20:39:45 +00:00
parent bcf46d9eab
commit 22f25a9e4f
23 changed files with 125 additions and 37 deletions

View file

@ -593,7 +593,6 @@ execute_binding(struct seat *seat, struct terminal *term,
case BIND_ACTION_SEARCH_EDIT_LEFT_WORD: {
size_t diff = distance_prev_word(term);
term->search.cursor -= diff;
assert(term->search.cursor >= 0);
assert(term->search.cursor <= term->search.len);
return false;
}
@ -606,7 +605,6 @@ execute_binding(struct seat *seat, struct terminal *term,
case BIND_ACTION_SEARCH_EDIT_RIGHT_WORD: {
size_t diff = distance_next_word(term);
term->search.cursor += diff;
assert(term->search.cursor >= 0);
assert(term->search.cursor <= term->search.len);
return false;
}