diff options
author | Kinsey Moore <kinsey.moore@oarcorp.com> | 2022-01-26 16:00:04 -0600 |
---|---|---|
committer | Joel Sherrill <joel@rtems.org> | 2022-01-27 13:07:30 -0600 |
commit | b539af865ea3217a50c8e4cbf0f668807c134356 (patch) | |
tree | 52af413092bfe40c3fde77d8935219245f151169 /cpukit/libmisc/stackchk/check.c | |
parent | Remove obsolete rtems_gxx_*() implementation (diff) | |
download | rtems-b539af865ea3217a50c8e4cbf0f668807c134356.tar.bz2 |
cpukit: Prevent error with disabled stack checker
When the stack checker is not enabled, the stack checker reporting
function can still be called. This prevents that call from performing a
null memory access in trying to find the high water mark if the stack
checker was never initialized.
This also introduces a test to ensure this call does not cause a crash.
Closes #4588
Diffstat (limited to '')
-rw-r--r-- | cpukit/libmisc/stackchk/check.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/cpukit/libmisc/stackchk/check.c b/cpukit/libmisc/stackchk/check.c index a2b63345d9..fa0c3ea1ed 100644 --- a/cpukit/libmisc/stackchk/check.c +++ b/cpukit/libmisc/stackchk/check.c @@ -410,6 +410,11 @@ static bool Stack_check_Dump_stack_usage( void *low; void *high_water_mark; + /* This is likely to occur if the stack checker is not actually enabled */ + if ( stack->area == NULL ) { + return false; + } + low = Stack_check_Usable_stack_start(stack); size = Stack_check_Usable_stack_size(stack); |