diff options
| author | Paul Eggert | 2014-09-01 23:29:01 -0700 |
|---|---|---|
| committer | Paul Eggert | 2014-09-01 23:29:01 -0700 |
| commit | 7a930c3c4c617aff075cf00f9e3482f1f04cb24b (patch) | |
| tree | 43203bf349ce0c854bc41e48cfc18c27b653c155 /src | |
| parent | 0e4c8f1856c46900f9530977e5ac9f83ca13bbfd (diff) | |
| download | emacs-7a930c3c4c617aff075cf00f9e3482f1f04cb24b.tar.gz emacs-7a930c3c4c617aff075cf00f9e3482f1f04cb24b.zip | |
* eval.c (internal_lisp_condition_case): Don't overrun the stack
when configured --with-wide-int on typical 32-bit platforms.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/eval.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 661731a9c5d..5e3ec8aa597 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2014-09-02 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | * eval.c (internal_lisp_condition_case): Don't overrun the stack | ||
| 4 | when configured --with-wide-int on typical 32-bit platforms. | ||
| 5 | |||
| 1 | 2014-08-31 Eli Zaretskii <eliz@gnu.org> | 6 | 2014-08-31 Eli Zaretskii <eliz@gnu.org> |
| 2 | 7 | ||
| 3 | * xdisp.c (display_and_set_cursor): Call erase_phys_cursor also | 8 | * xdisp.c (display_and_set_cursor): Call erase_phys_cursor also |
diff --git a/src/eval.c b/src/eval.c index a96d413d09f..5e986c7ecc2 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -1280,7 +1280,7 @@ internal_lisp_condition_case (volatile Lisp_Object var, Lisp_Object bodyform, | |||
| 1280 | { /* The first clause is the one that should be checked first, so it should | 1280 | { /* The first clause is the one that should be checked first, so it should |
| 1281 | be added to handlerlist last. So we build in `clauses' a table that | 1281 | be added to handlerlist last. So we build in `clauses' a table that |
| 1282 | contains `handlers' but in reverse order. */ | 1282 | contains `handlers' but in reverse order. */ |
| 1283 | Lisp_Object *clauses = alloca (clausenb * sizeof (Lisp_Object *)); | 1283 | Lisp_Object *clauses = alloca (clausenb * sizeof *clauses); |
| 1284 | Lisp_Object *volatile clauses_volatile = clauses; | 1284 | Lisp_Object *volatile clauses_volatile = clauses; |
| 1285 | int i = clausenb; | 1285 | int i = clausenb; |
| 1286 | for (val = handlers; CONSP (val); val = XCDR (val)) | 1286 | for (val = handlers; CONSP (val); val = XCDR (val)) |