diff options
| author | Barry O'Reilly | 2013-10-19 14:42:38 -0400 |
|---|---|---|
| committer | Barry O'Reilly | 2013-10-19 14:42:38 -0400 |
| commit | 6a3121904d76e3b2f63007341d48c5c1af55de80 (patch) | |
| tree | 0b6a9d797d11c07685a55fae9a293884d870a9a8 /src | |
| parent | 77936017aff66041231f078e8b269247c721456e (diff) | |
| download | emacs-6a3121904d76e3b2f63007341d48c5c1af55de80.tar.gz emacs-6a3121904d76e3b2f63007341d48c5c1af55de80.zip | |
* src/eval.c (unbind_for_thread_switch): Fix iteration over the
specpdl stack.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/eval.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 705b9c771df..b6ecd5f60ba 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2013-10-19 Barry O'Reilly <gundaetiapo@gmail.com> | ||
| 2 | |||
| 3 | * eval.c (unbind_for_thread_switch): Fix iteration over the | ||
| 4 | specpdl stack. | ||
| 5 | |||
| 1 | 2013-09-01 Eli Zaretskii <eliz@gnu.org> | 6 | 2013-09-01 Eli Zaretskii <eliz@gnu.org> |
| 2 | 7 | ||
| 3 | * eval.c (unbind_for_thread_switch): Accept a 'struct | 8 | * eval.c (unbind_for_thread_switch): Accept a 'struct |
diff --git a/src/eval.c b/src/eval.c index b8a61590387..fc16c15e626 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -3488,9 +3488,9 @@ unbind_for_thread_switch (struct thread_state *thr) | |||
| 3488 | { | 3488 | { |
| 3489 | union specbinding *bind; | 3489 | union specbinding *bind; |
| 3490 | 3490 | ||
| 3491 | for (bind = thr->m_specpdl_ptr; bind != thr->m_specpdl; --bind) | 3491 | for (bind = thr->m_specpdl_ptr; bind > thr->m_specpdl;) |
| 3492 | { | 3492 | { |
| 3493 | if (bind->kind >= SPECPDL_LET) | 3493 | if ((--bind)->kind >= SPECPDL_LET) |
| 3494 | { | 3494 | { |
| 3495 | bind->let.saved_value = find_symbol_value (specpdl_symbol (bind)); | 3495 | bind->let.saved_value = find_symbol_value (specpdl_symbol (bind)); |
| 3496 | do_one_unbind (bind, 0); | 3496 | do_one_unbind (bind, 0); |