diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/fns.c | 13 |
1 files changed, 10 insertions, 3 deletions
| @@ -66,6 +66,7 @@ int use_file_dialog; | |||
| 66 | extern int minibuffer_auto_raise; | 66 | extern int minibuffer_auto_raise; |
| 67 | extern Lisp_Object minibuf_window; | 67 | extern Lisp_Object minibuf_window; |
| 68 | extern Lisp_Object Vlocale_coding_system; | 68 | extern Lisp_Object Vlocale_coding_system; |
| 69 | extern Lisp_Object Vloads_in_progress; | ||
| 69 | 70 | ||
| 70 | Lisp_Object Qstring_lessp, Qprovide, Qrequire; | 71 | Lisp_Object Qstring_lessp, Qprovide, Qrequire; |
| 71 | Lisp_Object Qyes_or_no_p_history; | 72 | Lisp_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)) |