From 2ed2cbb91d5e09615ad6610810014198a269d539 Mon Sep 17 00:00:00 2001 From: Sergey Vinokurov Date: Fri, 14 Jan 2022 00:16:19 +0000 Subject: [PATCH] Unify getting of values from local_var_alist --- src/buffer.c | 2 +- src/data.c | 16 ++++++---------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/buffer.c b/src/buffer.c index 10ac91915c..a3091015d9 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -1247,7 +1247,7 @@ buffer_local_value (Lisp_Object variable, Lisp_Object buffer) { /* Look in local_var_alist. */ struct Lisp_Buffer_Local_Value *blv = SYMBOL_BLV (sym); XSETSYMBOL (variable, sym); /* Update In case of aliasing. */ - result = Fassoc (variable, BVAR (buf, local_var_alist), Qnil); + result = assq_no_quit (variable, BVAR (buf, local_var_alist)); if (!NILP (result)) { if (blv->fwd.fwdptr) diff --git a/src/data.c b/src/data.c index 5d0790692b..f287c38fcd 100644 --- a/src/data.c +++ b/src/data.c @@ -2103,7 +2103,7 @@ DEFUN ("make-local-variable", Fmake_local_variable, Smake_local_variable, /* Make sure this buffer has its own value of symbol. */ XSETSYMBOL (variable, sym); /* Update in case of aliasing. */ - tem = Fassq (variable, BVAR (current_buffer, local_var_alist)); + tem = assq_no_quit (variable, BVAR (current_buffer, local_var_alist)); if (NILP (tem)) { if (let_shadows_buffer_binding_p (sym)) @@ -2183,7 +2183,7 @@ DEFUN ("kill-local-variable", Fkill_local_variable, Skill_local_variable, /* Get rid of this buffer's alist element, if any. */ XSETSYMBOL (variable, sym); /* Propagate variable indirection. */ - tem = Fassq (variable, BVAR (current_buffer, local_var_alist)); + tem = assq_no_quit (variable, BVAR (current_buffer, local_var_alist)); if (!NILP (tem)) bset_local_var_alist (current_buffer, @@ -2224,7 +2224,7 @@ DEFUN ("local-variable-p", Flocal_variable_p, Slocal_variable_p, case SYMBOL_PLAINVAL: return Qnil; case SYMBOL_LOCALIZED: { - Lisp_Object tail, elt, tmp; + Lisp_Object tmp; struct Lisp_Buffer_Local_Value *blv = SYMBOL_BLV (sym); XSETBUFFER (tmp, buf); XSETSYMBOL (variable, sym); /* Update in case of aliasing. */ @@ -2232,13 +2232,9 @@ DEFUN ("local-variable-p", Flocal_variable_p, Slocal_variable_p, if (EQ (blv->where, tmp)) /* The binding is already loaded. */ return blv_found (blv) ? Qt : Qnil; else - for (tail = BVAR (buf, local_var_alist); CONSP (tail); tail = XCDR (tail)) - { - elt = XCAR (tail); - if (EQ (variable, XCAR (elt))) - return Qt; - } - return Qnil; + return NILP (assq_no_quit (variable, BVAR (buf, local_var_alist))) + ? Qnil + : Qt; } case SYMBOL_FORWARDED: { -- 2.34.1