emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/lread.c


From: Richard M . Stallman
Subject: [Emacs-diffs] Changes to emacs/src/lread.c
Date: Sun, 23 Oct 2005 13:25:43 -0400

Index: emacs/src/lread.c
diff -c emacs/src/lread.c:1.340 emacs/src/lread.c:1.341
*** emacs/src/lread.c:1.340     Fri Oct 21 16:54:13 2005
--- emacs/src/lread.c   Sun Oct 23 17:25:43 2005
***************
*** 1198,1230 ****
  
  /* Merge the list we've accumulated of globals from the current input source
     into the load_history variable.  The details depend on whether
!    the source has an associated file name or not. */
  
  static void
! build_load_history (stream, source)
!      FILE *stream;
!      Lisp_Object source;
  {
    register Lisp_Object tail, prev, newelt;
    register Lisp_Object tem, tem2;
!   register int foundit, loading;
! 
!   loading = stream || !NARROWED;
  
    tail = Vload_history;
    prev = Qnil;
!   foundit = 0;
    while (CONSP (tail))
      {
        tem = XCAR (tail);
  
        /* Find the feature's previous assoc list... */
!       if (!NILP (Fequal (source, Fcar (tem))))
        {
          foundit = 1;
  
!         /*  If we're loading, remove it. */
!         if (loading)
            {
              if (NILP (prev))
                Vload_history = XCDR (tail);
--- 1198,1231 ----
  
  /* Merge the list we've accumulated of globals from the current input source
     into the load_history variable.  The details depend on whether
!    the source has an associated file name or not.
! 
!    FILENAME is the file name that we are loading from.
!    ENTIRE is 1 if loading that entire file, 0 if evaluating part of it.  */
  
  static void
! build_load_history (filename, entire)
!      Lisp_Object filename;
!      int entire;
  {
    register Lisp_Object tail, prev, newelt;
    register Lisp_Object tem, tem2;
!   register int foundit = 0;
  
    tail = Vload_history;
    prev = Qnil;
! 
    while (CONSP (tail))
      {
        tem = XCAR (tail);
  
        /* Find the feature's previous assoc list... */
!       if (!NILP (Fequal (filename, Fcar (tem))))
        {
          foundit = 1;
  
!         /*  If we're loading the entire file, remove old data. */
!         if (entire)
            {
              if (NILP (prev))
                Vload_history = XCDR (tail);
***************
*** 1256,1265 ****
        QUIT;
      }
  
!   /* If we're loading, cons the new assoc onto the front of load-history,
!      the most-recently-loaded position.  Also do this if we didn't find
!      an existing member for the current source.  */
!   if (loading || !foundit)
      Vload_history = Fcons (Fnreverse (Vcurrent_load_list),
                           Vload_history);
  }
--- 1257,1266 ----
        QUIT;
      }
  
!   /* If we're loading an entire file, cons the new assoc onto the
!      front of load-history, the most-recently-loaded position.  Also
!      do this if we didn't find an existing member for the file.  */
!   if (entire || !foundit)
      Vload_history = Fcons (Fnreverse (Vcurrent_load_list),
                           Vload_history);
  }
***************
*** 1414,1420 ****
        }
      }
  
!   build_load_history (stream, sourcename);
    UNGCPRO;
  
    unbind_to (count, Qnil);
--- 1415,1423 ----
        }
      }
  
!   build_load_history (sourcename, 
!                     stream || (start == BEG && end == Z));
! 
    UNGCPRO;
  
    unbind_to (count, Qnil);
***************
*** 3896,3903 ****
  and means that SYMBOL was an autoload before this file redefined it
  as a function.
  
! For a preloaded file, the file name recorded is relative to the main Lisp
! directory.  These names are converted to absolute by `file-loadhist-lookup'.  
*/);
    Vload_history = Qnil;
  
    DEFVAR_LISP ("load-file-name", &Vload_file_name,
--- 3899,3906 ----
  and means that SYMBOL was an autoload before this file redefined it
  as a function.
  
! During preloading, the file name recorded is relative to the main Lisp
! directory.  These file names are converted to absolute at startup.  */);
    Vload_history = Qnil;
  
    DEFVAR_LISP ("load-file-name", &Vload_file_name,




reply via email to

[Prev in Thread] Current Thread [Next in Thread]