From 7455c673e62d14314c7c45151f139d5f4e3e25e2 Mon Sep 17 00:00:00 2001 From: Albert Cervin Date: Mon, 24 Nov 2025 22:51:46 +0100 Subject: Fix crashes when killing buffers Now, if you kill all buffers, the editor will shut down :) --- src/dged/buffers.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/dged') diff --git a/src/dged/buffers.c b/src/dged/buffers.c index f6d197d..e19b82e 100644 --- a/src/dged/buffers.c +++ b/src/dged/buffers.c @@ -143,10 +143,13 @@ bool buffers_remove(struct buffers *buffers, const char *name) { size_t namelen = strlen(name); while (chunk != NULL) { for (uint32_t i = 0; i < buffers->chunk_size; ++i) { + if (!chunk->entries[i].occupied) { + continue; + } + struct buffer *b = &chunk->entries[i].buffer; size_t bnamelen = strlen(b->name); - if (chunk->entries[i].occupied && namelen == bnamelen && - memcmp(name, b->name, bnamelen) == 0) { + if (namelen == bnamelen && memcmp(name, b->name, bnamelen) == 0) { buf_entry = &chunk->entries[i]; goto found; } -- cgit v1.2.3