From 0e828792ae34b8f43de0b9960e9b272be06a750c Mon Sep 17 00:00:00 2001 From: Calvin Rose Date: Tue, 19 May 2020 09:45:45 -0500 Subject: [PATCH] Fix segfault on bad loop. Fixes #407. --- src/core/specials.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/core/specials.c b/src/core/specials.c index 7e9b898b..56b3ae17 100644 --- a/src/core/specials.c +++ b/src/core/specials.c @@ -625,8 +625,8 @@ static JanetSlot janetc_while(JanetFopts opts, int32_t argn, const Janet *argv) subopts = janetc_fopts_default(c); tempscope.flags |= JANET_SCOPE_UNUSED; janetc_popscope(c); - janet_v__cnt(c->buffer) = labelwt; - janet_v__cnt(c->mapbuffer) = labelwt; + if (c->buffer) janet_v__cnt(c->buffer) = labelwt; + if (c->mapbuffer) janet_v__cnt(c->mapbuffer) = labelwt; janetc_scope(&tempscope, c, JANET_SCOPE_FUNCTION, "while-iife");