]> git.eshelyaron.com Git - emacs.git/commitdiff
(Frequire): Treat evaluating from a source file
authorRichard M. Stallman <rms@gnu.org>
Sun, 11 Dec 2005 05:10:08 +0000 (05:10 +0000)
committerRichard M. Stallman <rms@gnu.org>
Sun, 11 Dec 2005 05:10:08 +0000 (05:10 +0000)
like loading the file.

src/fns.c

index 4cf21b543ac07f5b891b4a6ea5970e006fada463..6ed5051ee78fc9275c9e2b18fddf8e6070388a23 100644 (file)
--- a/src/fns.c
+++ b/src/fns.c
@@ -3559,14 +3559,20 @@ The normal messages at start and end of loading FILENAME are suppressed.  */)
 {
   register Lisp_Object tem;
   struct gcpro gcpro1, gcpro2;
+  int from_file = load_in_progress;
 
   CHECK_SYMBOL (feature);
 
   /* Record the presence of `require' in this file
      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 (load_in_progress)
+     and not when we aren't loading or reading from a file.  */
+  if (!from_file)
+    for (tem = Vcurrent_load_list; CONSP (tem); tem = XCDR (tem))
+      if (NILP (XCDR (tem)) && STRINGP (XCAR (tem)))
+       from_file = 1;
+
+  if (from_file)
     {
       tem = Fcons (Qrequire, feature);
       if (NILP (Fmember (tem, Vcurrent_load_list)))