Skip to content

Commit

Permalink
BaseStackCheckLib: Fix STACK FAULT message
Browse files Browse the repository at this point in the history
__builtin_return_address returns a pointer, not a string.  Fix the STACK
FAULT message in BaseStackCheckLib appropriately.

Signed-off-by: Jake Garver <[email protected]>
  • Loading branch information
jgarver committed Oct 4, 2023
1 parent 1497c4b commit b27d334
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion MdePkg/Library/BaseStackCheckLib/BaseStackCheckGcc.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
to exiting the function. If the "canary" is overwritten __stack_chk_fail()
is called. This is GCC specific code.
Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
Copyright (c) 2012, Apple Inc. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
Expand Down Expand Up @@ -34,7 +35,7 @@ __stack_chk_fail (
{
UINT8 DebugPropertyMask;

DEBUG ((DEBUG_ERROR, "STACK FAULT: Buffer Overflow in function %a.\n", __builtin_return_address (0)));
DEBUG ((DEBUG_ERROR, "STACK FAULT: Buffer Overflow at 0x%p.\n", RETURN_ADDRESS (0)));

//
// Generate a Breakpoint, DeadLoop, or NOP based on PCD settings even if
Expand Down

0 comments on commit b27d334

Please sign in to comment.