aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorliamwhite <liamwhite@users.noreply.github.com>2023-05-28 13:18:54 -0400
committerGitHub <noreply@github.com>2023-05-28 13:18:54 -0400
commitb26018e2e6835eb9968e29e573afcda6d9584cf9 (patch)
tree3b149afcaeca7948c826cb326c46582c0b9dddff
parent381caf4c00f5d5a611acdc9165a4929ddeb6c195 (diff)
parentfee91096ca71a7215a3d6e6b92cacc1227e23fd0 (diff)
Merge pull request #10475 from ameerj/microprofile-workaround
microprofile: Avoid crashing due to OOB stackPos
-rw-r--r--externals/microprofile/microprofile.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/externals/microprofile/microprofile.h b/externals/microprofile/microprofile.h
index 639f3618c6..8f75a25aa8 100644
--- a/externals/microprofile/microprofile.h
+++ b/externals/microprofile/microprofile.h
@@ -1697,7 +1697,13 @@ void MicroProfileFlip()
{
int nTimer = MicroProfileLogTimerIndex(LE);
uint8_t nGroup = pTimerToGroup[nTimer];
- MP_ASSERT(nStackPos < MICROPROFILE_STACK_MAX);
+
+ // To avoid crashing due to OOB memory accesses/asserts
+ // simply skip this iteration
+ // MP_ASSERT(nStackPos < MICROPROFILE_STACK_MAX);
+ if (nStackPos >= MICROPROFILE_STACK_MAX) {
+ break;
+ }
MP_ASSERT(nGroup < MICROPROFILE_MAX_GROUPS);
pGroupStackPos[nGroup]++;
pStack[nStackPos++] = k;