From 312deba5302a8136fa104b054af54572cc64ea5e Mon Sep 17 00:00:00 2001 From: Andrea Corallo Date: Fri, 26 Feb 2021 21:27:02 +0100 Subject: [PATCH] * Canonicalize filenames on Windows before hashing (bug#46256) * src/comp.c (Fcomp_el_to_eln_filename): On Windowns canonicalize filenames before hashing. --- src/comp.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/comp.c b/src/comp.c index a8b8ef95fa..1a89e4e62a 100644 --- a/src/comp.c +++ b/src/comp.c @@ -3983,6 +3983,10 @@ DEFUN ("comp-el-to-eln-filename", Fcomp_el_to_eln_filename, if (NILP (Ffile_exists_p (filename))) xsignal1 (Qfile_missing, filename); +#ifdef WINDOWSNT + filename = Fw32_long_file_name (filename); +#endif + Lisp_Object content_hash = comp_hash_source_file (filename); if (suffix_p (filename, ".gz")) @@ -4014,8 +4018,11 @@ DEFUN ("comp-el-to-eln-filename", Fcomp_el_to_eln_filename, Lisp_Object sys_re = concat2 (build_string ("\\`[[:ascii:]]+"), Fregexp_quote (build_string ("/" PATH_REL_LOADSEARCH "/"))); - loadsearch_re_list = - list2 (sys_re, Fregexp_quote (build_string (PATH_DUMPLOADSEARCH "/"))); + Lisp_Object dump_load_search = build_string (PATH_DUMPLOADSEARCH "/"); +#ifdef WINDOWSNT + dump_load_search = Fw32_long_file_name (dump_load_search); +#endif + loadsearch_re_list = list2 (sys_re, Fregexp_quote (dump_load_search)); } Lisp_Object lds_re_tail = loadsearch_re_list; -- 2.20.1