diff options
| author | Eric S. Raymond | 1993-04-28 17:08:18 +0000 |
|---|---|---|
| committer | Eric S. Raymond | 1993-04-28 17:08:18 +0000 |
| commit | 5739ce6baf9de29afa1645045544942523da4313 (patch) | |
| tree | fe000c1c25cff197c2329080bdb4079825ea3d4d /src | |
| parent | e4c8c838e9af5d24569ba8f2fada41aa0cd3a168 (diff) | |
| download | emacs-5739ce6baf9de29afa1645045544942523da4313.tar.gz emacs-5739ce6baf9de29afa1645045544942523da4313.zip | |
(do_autoload): Fixed the bug in the autoload-saving code.
Diffstat (limited to 'src')
| -rw-r--r-- | src/eval.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/eval.c b/src/eval.c index 445ff088164..8cd05ca7fe1 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -1391,7 +1391,6 @@ do_autoload (fundef, funname) | |||
| 1391 | Vautoload_queue = Qt; | 1391 | Vautoload_queue = Qt; |
| 1392 | Fload (Fcar (Fcdr (fundef)), Qnil, noninteractive ? Qt : Qnil, Qnil); | 1392 | Fload (Fcar (Fcdr (fundef)), Qnil, noninteractive ? Qt : Qnil, Qnil); |
| 1393 | 1393 | ||
| 1394 | #ifdef UNLOAD | ||
| 1395 | /* Save the old autoloads, in case we ever do an unload. */ | 1394 | /* Save the old autoloads, in case we ever do an unload. */ |
| 1396 | queue = Vautoload_queue; | 1395 | queue = Vautoload_queue; |
| 1397 | while (CONSP (queue)) | 1396 | while (CONSP (queue)) |
| @@ -1399,11 +1398,15 @@ do_autoload (fundef, funname) | |||
| 1399 | first = Fcar (queue); | 1398 | first = Fcar (queue); |
| 1400 | second = Fcdr (first); | 1399 | second = Fcdr (first); |
| 1401 | first = Fcar (first); | 1400 | first = Fcar (first); |
| 1402 | if (!EQ (second, Qnil)) | 1401 | |
| 1402 | /* Note: This test is subtle. The cdr of an autoload-queue entry | ||
| 1403 | may be an atom if the autoload entry was generated by a defalias | ||
| 1404 | or fset. */ | ||
| 1405 | if (CONSP (second)) | ||
| 1403 | Fput(first, Qautoload, (Fcdr (second))); | 1406 | Fput(first, Qautoload, (Fcdr (second))); |
| 1407 | |||
| 1404 | queue = Fcdr (queue); | 1408 | queue = Fcdr (queue); |
| 1405 | } | 1409 | } |
| 1406 | #endif /* UNLOAD */ | ||
| 1407 | 1410 | ||
| 1408 | /* Once loading finishes, don't undo it. */ | 1411 | /* Once loading finishes, don't undo it. */ |
| 1409 | Vautoload_queue = Qt; | 1412 | Vautoload_queue = Qt; |