aboutsummaryrefslogtreecommitdiffstats
path: root/src/bytecode.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/bytecode.c')
-rw-r--r--src/bytecode.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/bytecode.c b/src/bytecode.c
index e95614c72a9..c59f75dc78e 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -505,8 +505,9 @@ If the third argument is incorrect, Emacs may crash. */)
505 v1 = vectorp[op]; 505 v1 = vectorp[op];
506 if (SYMBOLP (v1)) 506 if (SYMBOLP (v1))
507 { 507 {
508 v2 = SYMBOL_VALUE (v1); 508 if (XSYMBOL (v1)->redirect != SYMBOL_PLAINVAL
509 if (MISCP (v2) || EQ (v2, Qunbound)) 509 || (v2 = SYMBOL_VAL (XSYMBOL (v1)),
510 EQ (v2, Qunbound)))
510 { 511 {
511 BEFORE_POTENTIAL_GC (); 512 BEFORE_POTENTIAL_GC ();
512 v2 = Fsymbol_value (v1); 513 v2 = Fsymbol_value (v1);
@@ -597,10 +598,9 @@ If the third argument is incorrect, Emacs may crash. */)
597 /* Inline the most common case. */ 598 /* Inline the most common case. */
598 if (SYMBOLP (sym) 599 if (SYMBOLP (sym)
599 && !EQ (val, Qunbound) 600 && !EQ (val, Qunbound)
600 && !XSYMBOL (sym)->indirect_variable 601 && !XSYMBOL (sym)->redirect
601 && !SYMBOL_CONSTANT_P (sym) 602 && !SYMBOL_CONSTANT_P (sym))
602 && !MISCP (XSYMBOL (sym)->value)) 603 XSYMBOL (sym)->val.value = val;
603 XSYMBOL (sym)->value = val;
604 else 604 else
605 { 605 {
606 BEFORE_POTENTIAL_GC (); 606 BEFORE_POTENTIAL_GC ();