libpayload: don't dereference null pointer in exception handler
Change-Id: I93e5e2488ddd616c91769beb1acd96f8ebd7d505 Signed-off-by: Patrick Georgi <patrick@georgi-clan.de> Found-by: Coverity Scan Reviewed-on: http://review.coreboot.org/7971 Tested-by: build bot (Jenkins) Reviewed-by: Martin Roth <gaumless@gmail.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
parent
82292441c7
commit
bcf07c3f24
@ -141,14 +141,16 @@ static void dump_stack(uintptr_t addr, size_t bytes)
|
|||||||
static void dump_exception_state(struct exception_handler_state *state,
|
static void dump_exception_state(struct exception_handler_state *state,
|
||||||
struct exception_handler_info *info)
|
struct exception_handler_info *info)
|
||||||
{
|
{
|
||||||
if (info)
|
if (info) {
|
||||||
printf("Exception %d (%s)\n", state->vector, info->name);
|
printf("Exception %d (%s)\n", state->vector, info->name);
|
||||||
else
|
|
||||||
|
if (info->error_code_printer) {
|
||||||
|
printf("Error code: ");
|
||||||
|
info->error_code_printer(state->error_code);
|
||||||
|
printf("\n");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
printf("Unrecognized exception %d\n", state->vector);
|
printf("Unrecognized exception %d\n", state->vector);
|
||||||
if (info->error_code_printer) {
|
|
||||||
printf("Error code: ");
|
|
||||||
info->error_code_printer(state->error_code);
|
|
||||||
printf("\n");
|
|
||||||
}
|
}
|
||||||
printf("EIP: 0x%08x\n", state->regs.eip);
|
printf("EIP: 0x%08x\n", state->regs.eip);
|
||||||
printf("CS: 0x%04x\n", state->regs.cs);
|
printf("CS: 0x%04x\n", state->regs.cs);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user