emacs-diffs
[Top][All Lists]
Advanced

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

feature/native-comp 03dfa83: * Do not check eln timestamp as superseded


From: Andrea Corallo
Subject: feature/native-comp 03dfa83: * Do not check eln timestamp as superseded by source hashing (bug#43532)
Date: Thu, 15 Oct 2020 06:53:04 -0400 (EDT)

branch: feature/native-comp
commit 03dfa83dc35738c9228b66b3d3f72753b344f939
Author: Andrea Corallo <akrl@sdf.org>
Commit: Andrea Corallo <akrl@sdf.org>

    * Do not check eln timestamp as superseded by source hashing (bug#43532)
    
        * src/lread.c (maybe_swap_for_eln): Remove eln file timestamp
        check given is now unnecessary.
        (openp): Update for new 'maybe_swap_for_eln' signature.
---
 src/lread.c | 26 ++++++++++----------------
 1 file changed, 10 insertions(+), 16 deletions(-)

diff --git a/src/lread.c b/src/lread.c
index ea31131..6aab470 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -1589,7 +1589,7 @@ directories, make sure the PREDICATE function returns 
`dir-ok' for them.  */)
    If found replace the content of FILENAME and FD. */
 
 static void
-maybe_swap_for_eln (Lisp_Object *filename, int *fd, struct timespec mtime)
+maybe_swap_for_eln (Lisp_Object *filename, int *fd)
 {
 #ifdef HAVE_NATIVE_COMP
   struct stat eln_st;
@@ -1621,19 +1621,13 @@ maybe_swap_for_eln (Lisp_Object *filename, int *fd, 
struct timespec mtime)
            emacs_close (eln_fd);
          else
            {
-             struct timespec eln_mtime = get_stat_mtime (&eln_st);
-             if (timespec_cmp (eln_mtime, mtime) > 0)
-               {
-                 *filename = eln_name;
-                 emacs_close (*fd);
-                 *fd = eln_fd;
-                 /* Store the eln -> el relation.  */
-                 Fputhash (Ffile_name_nondirectory (eln_name),
-                           src_name, Vcomp_eln_to_el_h);
-                 return;
-               }
-             else
-               emacs_close (eln_fd);
+             *filename = eln_name;
+             emacs_close (*fd);
+             *fd = eln_fd;
+             /* Store the eln -> el relation.  */
+             Fputhash (Ffile_name_nondirectory (eln_name),
+                       src_name, Vcomp_eln_to_el_h);
+             return;
            }
        }
     }
@@ -1878,7 +1872,7 @@ openp (Lisp_Object path, Lisp_Object str, Lisp_Object 
suffixes,
                  }
                else
                  {
-                   maybe_swap_for_eln (&string, &fd, get_stat_mtime (&st));
+                   maybe_swap_for_eln (&string, &fd);
                    /* We succeeded; return this descriptor and filename.  */
                    if (storeptr)
                      *storeptr = string;
@@ -1890,7 +1884,7 @@ openp (Lisp_Object path, Lisp_Object str, Lisp_Object 
suffixes,
            /* No more suffixes.  Return the newest.  */
            if (0 <= save_fd && ! CONSP (XCDR (tail)))
              {
-               maybe_swap_for_eln (&save_string, &save_fd, save_mtime);
+               maybe_swap_for_eln (&save_string, &save_fd);
                if (storeptr)
                  *storeptr = save_string;
                SAFE_FREE ();



reply via email to

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