summaryrefslogtreecommitdiff
path: root/src/fns.c
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2005-04-14 05:03:52 +0000
committerMiles Bader <miles@gnu.org>2005-04-14 05:03:52 +0000
commit4a4ae7ad21e9e53ed9a0006c39d69108333bc896 (patch)
tree514ec70cdfdd49c518599e15b8fdf1e85850e7d7 /src/fns.c
parent6f14f88410854410caf4b402cfbe0f93a80c3f86 (diff)
parent24531f226fb1150c3a52a3ebf9273d1af36062ea (diff)
downloademacs-4a4ae7ad21e9e53ed9a0006c39d69108333bc896.tar.gz
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-37
Merge from emacs--cvs-trunk--0 Patches applied: * emacs--cvs-trunk--0 (patch 241-257) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 59-65) - Update from CVS - Merge from emacs--cvs-trunk--0 - (mm-string-to-multibyte): Use Gnus trunk definition.
Diffstat (limited to 'src/fns.c')
-rw-r--r--src/fns.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/fns.c b/src/fns.c
index 52e258a3590..6f59b85665c 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -1,6 +1,6 @@
/* Random utility Lisp functions.
- Copyright (C) 1985, 86, 87, 93, 94, 95, 97, 98, 99, 2000, 2001, 02, 03, 2004
- Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1998, 1999, 2000,
+ 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -66,6 +66,7 @@ int use_file_dialog;
extern int minibuffer_auto_raise;
extern Lisp_Object minibuf_window;
extern Lisp_Object Vlocale_coding_system;
+extern Lisp_Object Vloads_in_progress;
Lisp_Object Qstring_lessp, Qprovide, Qrequire;
Lisp_Object Qyes_or_no_p_history;
@@ -2907,9 +2908,15 @@ The normal messages at start and end of loading FILENAME are suppressed. */)
CHECK_SYMBOL (feature);
/* Record the presence of `require' in this file
- even if the feature specified is already loaded. */
- LOADHIST_ATTACH (Fcons (Qrequire, feature));
-
+ even if the feature specified is already loaded.
+ But not more than once in any file,
+ and not when we aren't loading a file. */
+ if (! NILP (Vloads_in_progress))
+ {
+ tem = Fcons (Qrequire, feature);
+ if (NILP (Fmember (tem, Vcurrent_load_list)))
+ LOADHIST_ATTACH (tem);
+ }
tem = Fmemq (feature, Vfeatures);
if (NILP (tem))