diff options
author | Miles Bader <miles@gnu.org> | 2007-10-27 09:12:07 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 2007-10-27 09:12:07 +0000 |
commit | 18cd1f1a08833b0baad21c1d7b13a6845d95cf57 (patch) | |
tree | 03f33df7513d15bd5de0348aec35ef82bd061508 /src/eval.c | |
parent | 74863e7a78b1c8da1094a8250660a009c3b23015 (diff) | |
parent | fdc9061358d3654e14bfc1419632e1d6c6c5c13e (diff) | |
download | emacs-18cd1f1a08833b0baad21c1d7b13a6845d95cf57.tar.gz |
Merge from emacs--devo--0
Patches applied:
* emacs--devo--0 (patch 902-908)
- Update from CVS
- Merge from emacs--rel--22
* emacs--rel--22 (patch 131-137)
- Update from CVS
- Merge from gnus--rel--5.10
* gnus--rel--5.10 (patch 261-262)
- Update from CVS
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-278
Diffstat (limited to 'src/eval.c')
-rw-r--r-- | src/eval.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/eval.c b/src/eval.c index eaa1a6855f6..7f5f58a2e81 100644 --- a/src/eval.c +++ b/src/eval.c @@ -2194,7 +2194,14 @@ do_autoload (fundef, funname) /* Preserve the match data. */ record_unwind_save_match_data (); - /* Value saved here is to be restored into Vautoload_queue. */ + /* If autoloading gets an error (which includes the error of failing + to define the function being called), we use Vautoload_queue + to undo function definitions and `provide' calls made by + the function. We do this in the specific case of autoloading + because autoloading is not an explicit request "load this file", + but rather a request to "call this function". + + The value saved here is to be restored into Vautoload_queue. */ record_unwind_protect (un_autoload, Vautoload_queue); Vautoload_queue = Qt; Fload (Fcar (Fcdr (fundef)), Qnil, Qt, Qnil, Qt); |