[Top][All Lists]
[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,