aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTom Tromey2013-07-04 19:48:59 -0600
committerTom Tromey2013-07-04 19:48:59 -0600
commite7b4d03f5a74b16c924079b75f5b0617c9ee7add (patch)
tree4f9e640f6591b32f4006cf275a87aa8fa70f1c8c /src
parentb09859f771fb46a2248198f45ae40712e4c7dd8a (diff)
downloademacs-e7b4d03f5a74b16c924079b75f5b0617c9ee7add.tar.gz
emacs-e7b4d03f5a74b16c924079b75f5b0617c9ee7add.zip
initialize saved_value
initialize the saved_value field in all needed cases also, add an assertion to do_one_unbind
Diffstat (limited to 'src')
-rw-r--r--src/eval.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/eval.c b/src/eval.c
index 3f7be81a7e4..37ea81ba1cb 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -3118,6 +3118,7 @@ specbind (Lisp_Object symbol, Lisp_Object value)
3118 specpdl_ptr->v.let.symbol = symbol; 3118 specpdl_ptr->v.let.symbol = symbol;
3119 specpdl_ptr->v.let.old_value = ovalue; 3119 specpdl_ptr->v.let.old_value = ovalue;
3120 specpdl_ptr->v.let.where = Fcurrent_buffer (); 3120 specpdl_ptr->v.let.where = Fcurrent_buffer ();
3121 specpdl_ptr->v.let.saved_value = Qnil;
3121 3122
3122 eassert (sym->redirect != SYMBOL_LOCALIZED 3123 eassert (sym->redirect != SYMBOL_LOCALIZED
3123 || (EQ (SYMBOL_BLV (sym)->where, Fcurrent_buffer ()))); 3124 || (EQ (SYMBOL_BLV (sym)->where, Fcurrent_buffer ())));
@@ -3184,6 +3185,7 @@ rebind_for_thread_switch (void)
3184static void 3185static void
3185do_one_unbind (struct specbinding *this_binding, int unwinding) 3186do_one_unbind (struct specbinding *this_binding, int unwinding)
3186{ 3187{
3188 eassert (unwinding || this_binding->kind >= SPECPDL_LET);
3187 switch (this_binding->kind) 3189 switch (this_binding->kind)
3188 { 3190 {
3189 case SPECPDL_UNWIND: 3191 case SPECPDL_UNWIND: