aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/fns.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/fns.c b/src/fns.c
index 9a3121a3391..d85a6adfeb1 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -66,6 +66,7 @@ int use_file_dialog;
66extern int minibuffer_auto_raise; 66extern int minibuffer_auto_raise;
67extern Lisp_Object minibuf_window; 67extern Lisp_Object minibuf_window;
68extern Lisp_Object Vlocale_coding_system; 68extern Lisp_Object Vlocale_coding_system;
69extern Lisp_Object Vloads_in_progress;
69 70
70Lisp_Object Qstring_lessp, Qprovide, Qrequire; 71Lisp_Object Qstring_lessp, Qprovide, Qrequire;
71Lisp_Object Qyes_or_no_p_history; 72Lisp_Object Qyes_or_no_p_history;
@@ -3444,9 +3445,15 @@ The normal messages at start and end of loading FILENAME are suppressed. */)
3444 CHECK_SYMBOL (feature); 3445 CHECK_SYMBOL (feature);
3445 3446
3446 /* Record the presence of `require' in this file 3447 /* Record the presence of `require' in this file
3447 even if the feature specified is already loaded. */ 3448 even if the feature specified is already loaded.
3448 LOADHIST_ATTACH (Fcons (Qrequire, feature)); 3449 But not more than once in any file,
3449 3450 and not when we aren't loading a file. */
3451 if (! NILP (Vloads_in_progress))
3452 {
3453 tem = Fcons (Qrequire, feature);
3454 if (NILP (Fmember (tem, Vcurrent_load_list)))
3455 LOADHIST_ATTACH (tem);
3456 }
3450 tem = Fmemq (feature, Vfeatures); 3457 tem = Fmemq (feature, Vfeatures);
3451 3458
3452 if (NILP (tem)) 3459 if (NILP (tem))