From 455cc018b7bfa58bd6431f7c0a8d03689fd4d9a9 Mon Sep 17 00:00:00 2001 From: Nathaniel Walizer Date: Mon, 1 Sep 2025 02:05:08 -0700 Subject: [PATCH] Fix use-after-free in overlay_clear --- src/overlay.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/overlay.c b/src/overlay.c index e5a3e23..3918531 100644 --- a/src/overlay.c +++ b/src/overlay.c @@ -23,9 +23,11 @@ void overlay_done(Overlay* overlay) { int overlay_clear(Overlay* overlay) { int n_cleared = 0; + overlay_message* next = NULL; for ( overlay_message* message = overlay->messages; NULL != message; - message = message->next) { + message = next) { + next = message->next; free(message->string); free(message); ++n_cleared;