GNU bug report logs - #5845
load-library vs. list-load-path-shadows

Previous Next

Package: emacs;

Reported by: Juanma Barranquero <lekktu <at> gmail.com>

Date: Tue, 6 Apr 2010 13:37:02 UTC

Severity: normal

Tags: fixed

Fixed in version 26.1

Done: Noam Postavsky <npostavs <at> users.sourceforge.net>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Noam Postavsky <npostavs <at> users.sourceforge.net>
To: 5845 <at> debbugs.gnu.org
Subject: bug#5845: load-library vs. list-load-path-shadows
Date: Tue, 16 Jan 2018 10:54:42 -0500
[Message part 1 (text/plain, inline)]
Should we just use case-insensitive compare for `windows-nt' systems?
The idea of using "the same heuristics" as `load' sounds nice, but as
far as I can tell, `load' just queries the file system directly. Doing
the same in `load-path-shadow-find' is far too slow (raises execution
time from 0.38s to 5.64s, and that's without any packages adding to
the load-path).

--- i/lisp/emacs-lisp/shadow.el
+++ w/lisp/emacs-lisp/shadow.el
@@ -123,7 +123,9 @@ load-path-shadows-find
         ;; XXX.elc (or vice-versa) when they are in the same directory.
         (setq files-seen-this-dir (cons file files-seen-this-dir))

-        (if (setq orig-dir (assoc file files))
+        (if (setq orig-dir (assoc file files
+                                      (if (memq system-type
'(windows-nt ms-dos))
+                      (lambda (f1 f2) (eq (compare-strings f1 nil nil
f2 nil nil t) t)))))
         ;; This file was seen before, we have a shadowing.
         ;; Report it unless the files are identical.
         (let ((base1 (concat (cdr orig-dir) "/" file))
[naive-shadow-list.el (application/octet-stream, attachment)]

This bug report was last modified 7 years and 180 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.