summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib.c b/lib.c
index ba6318f1..2c4bb209 100644
--- a/lib.c
+++ b/lib.c
@@ -8449,7 +8449,7 @@ static val take_while_list_fun(val env, val lcons)
rplaca(lcons, pop(&list));
- if (!funcall1(pred, funcall1(keyfun, car(list))))
+ if (!list || !funcall1(pred, funcall1(keyfun, car(list))))
rplacd(lcons, nil);
else
rplacd(lcons, make_lazy_cons(lcons_fun(lcons)));
@@ -8493,7 +8493,7 @@ static val take_until_list_fun(val env, val lcons)
rplaca(lcons, item);
- if (funcall1(pred, funcall1(keyfun, item)))
+ if (!list || funcall1(pred, funcall1(keyfun, item)))
rplacd(lcons, nil);
else
rplacd(lcons, make_lazy_cons(lcons_fun(lcons)));