From 44b16f60fd80afe574964390d896635971cb5504 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Mon, 15 Feb 2016 16:03:54 +0200 Subject: [PATCH] Avoid crashes in semi-malformed 'condition-case' * src/eval.c (internal_lisp_condition_case): Treat a handler '(nil)' as if it were '(nil nil)'. (Bug#22675) --- src/eval.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/eval.c b/src/eval.c index 6c912bc476..26104a5827 100644 --- a/src/eval.c +++ b/src/eval.c @@ -1245,7 +1245,7 @@ internal_lisp_condition_case (volatile Lisp_Object var, Lisp_Object bodyform, for (i = 0; i < clausenb; i++) { Lisp_Object clause = clauses[i]; - Lisp_Object condition = XCAR (clause); + Lisp_Object condition = CONSP (clause) ? XCAR (clause) : Qnil; if (!CONSP (condition)) condition = Fcons (condition, Qnil); struct handler *c = push_handler (condition, CONDITION_CASE); -- 2.39.2