From 109e2a67ab55d44acd907eace1dcfbd98a9276b9 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Sat, 6 Aug 2022 15:50:25 -0700 Subject: [PATCH] selectionString: realloc so free gets the correct length --- src/terminal/Screen.zig | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/terminal/Screen.zig b/src/terminal/Screen.zig index e6460bf81..132504ae1 100644 --- a/src/terminal/Screen.zig +++ b/src/terminal/Screen.zig @@ -469,7 +469,10 @@ pub fn selectionString(self: Screen, alloc: Allocator, sel: Selection) ![:0]cons // Add null termination buf[i] = 0; - return buf[0..i :0]; + + // Realloc so our free length is exactly correct + const result = try alloc.realloc(buf, i + 1); + return result[0..i :0]; } /// Returns the slices that make up the selection, in order. There are at most