diff options
| author | Richard M. Stallman | 2014-03-21 19:16:26 -0400 |
|---|---|---|
| committer | Richard M. Stallman | 2014-03-21 19:16:26 -0400 |
| commit | 16ec0742ffd77057d58a9cf203ead02e06a645d5 (patch) | |
| tree | 79707450717d174b15348fdf8e98e878804429ad | |
| parent | 664ed753351084e8d53c00ccbfc4d4fefcd78e05 (diff) | |
| download | emacs-16ec0742ffd77057d58a9cf203ead02e06a645d5.tar.gz emacs-16ec0742ffd77057d58a9cf203ead02e06a645d5.zip | |
Avoid GC crashes.
* lisp/subr.el (set-transient-map): Clear out function and value
of the temporary symbol when we're done with it.
| -rw-r--r-- | lisp/ChangeLog | 3 | ||||
| -rw-r--r-- | lisp/subr.el | 5 |
2 files changed, 7 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 7e26346418a..cdb9c3536a6 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,5 +1,8 @@ | |||
| 1 | 2014-03-21 Richard Stallman <rms@gnu.org> | 1 | 2014-03-21 Richard Stallman <rms@gnu.org> |
| 2 | 2 | ||
| 3 | * subr.el (set-transient-map): Clear out function and value | ||
| 4 | of the temporary symbol when we're done with it. | ||
| 5 | |||
| 3 | * mail/rmailsum.el (rmail-summary-delete-forward): | 6 | * mail/rmailsum.el (rmail-summary-delete-forward): |
| 4 | Optimize case of reaching end and handling count. | 7 | Optimize case of reaching end and handling count. |
| 5 | (rmail-summary-mark-deleted): Optimize when N is current msg. | 8 | (rmail-summary-mark-deleted): Optimize when N is current msg. |
diff --git a/lisp/subr.el b/lisp/subr.el index e4350bffff8..1246efedeaf 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -4312,7 +4312,10 @@ lookup sequence then continues." | |||
| 4312 | (t (funcall keep-pred))) | 4312 | (t (funcall keep-pred))) |
| 4313 | (internal-pop-keymap map 'overriding-terminal-local-map) | 4313 | (internal-pop-keymap map 'overriding-terminal-local-map) |
| 4314 | (remove-hook 'pre-command-hook clearfun) | 4314 | (remove-hook 'pre-command-hook clearfun) |
| 4315 | (when on-exit (funcall on-exit)))))) | 4315 | (when on-exit (funcall on-exit)) |
| 4316 | ;; Comment out the fset if you want to debug the GC bug. | ||
| 4317 | (fset clearfun nil) | ||
| 4318 | (set clearfun nil))))) | ||
| 4316 | (add-hook 'pre-command-hook clearfun) | 4319 | (add-hook 'pre-command-hook clearfun) |
| 4317 | (internal-push-keymap map 'overriding-terminal-local-map))) | 4320 | (internal-push-keymap map 'overriding-terminal-local-map))) |
| 4318 | 4321 | ||