summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpeter <peter@pmikkelsen.com>2026-08-31 20:04:50 +0000
committerpeter <peter@pmikkelsen.com>2026-08-31 20:04:50 +0000
commit0091c055edceca2598dfb7dd64cdcb081e4c7507 (patch)
tree07e3271fa68c22a32f19106f3af5679a10bb8dd6
parent79663b57ce0b1f2da77d4e8bfd831f318aada49b (diff)
Fix problems in release builds
FossilOrigin-Name: 98227d25674f373968f51df0dcdccf3cf14d646a13e56a9229103d1aeb3ad73d
-rw-r--r--src/bin/main.c1
-rw-r--r--src/lib/memory.c7
2 files changed, 5 insertions, 3 deletions
diff --git a/src/bin/main.c b/src/bin/main.c
index 42ab963..c3743f2 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -36,6 +36,7 @@ main(int argc, char *argv[])
aplwc_clear_line(&line);
aplwc_clear_value(&value);
+ input = NULL;
xflag = 0;
input_file = 0;
exit_code = 0;
diff --git a/src/lib/memory.c b/src/lib/memory.c
index b6e044a..694a31b 100644
--- a/src/lib/memory.c
+++ b/src/lib/memory.c
@@ -105,7 +105,7 @@ grow(struct aplwc *aplwc, size_t extra)
{
uint8_t *unaligned_data, *aligned_data;
size_t unaligned_newsize, aligned_newsize, adjust;
- struct chunk **free;
+ struct chunk **free, *head;
if(aplwc->fns.alloc == NULL)
goto error;
@@ -123,16 +123,17 @@ grow(struct aplwc *aplwc, size_t extra)
aligned_newsize -= aligned_newsize % ALIGNMENT;
assert(aligned_newsize >= (aplwc->size + extra));
+ head = (struct chunk *)aligned_data;
if(aplwc->data){
memmove(aligned_data, aplwc->data, aplwc->size);
fixrefs(aplwc, aligned_data, aplwc->data);
if(aplwc->fns.dealloc)
aplwc->fns.dealloc(aplwc->unaligned_data);
- for(free = (struct chunk **)&aligned_data; (*free); free = &(*free)->next)
+ for(free = &head; (*free); free = &(*free)->next)
assert((*free)->tag != CHUNK_TAG_FREE);
}else
- free = (struct chunk **)&aligned_data;
+ free = &head;
(*free) = (struct chunk *)(aligned_data + aplwc->size);