From 94ca934a5c4ef4908fdb7bcd78950bacf9c4ce88 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 18 Sep 2019 03:06:10 -0700 Subject: [PATCH] Fix permission-denied issue in MS-Windows startup * src/callproc.c (init_callproc): Use file_access_p rather than Ffile_exists_p during startup (Bug#37445). --- src/callproc.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/callproc.c b/src/callproc.c index 1ac0bdc710a..dbbf15c792a 100644 --- a/src/callproc.c +++ b/src/callproc.c @@ -1560,20 +1560,19 @@ init_callproc (void) source directory. */ if (data_dir == 0) { - Lisp_Object tem, tem1, srcdir; + Lisp_Object tem, srcdir; Lisp_Object lispdir = Fcar (decode_env_path (0, PATH_DUMPLOADSEARCH, 0)); srcdir = Fexpand_file_name (build_string ("../src/"), lispdir); tem = Fexpand_file_name (build_string ("NEWS"), Vdata_directory); - tem1 = Ffile_exists_p (tem); - if (!NILP (Fequal (srcdir, Vinvocation_directory)) || NILP (tem1)) + if (!NILP (Fequal (srcdir, Vinvocation_directory)) + || !file_access_p (SSDATA (tem), F_OK)) { Lisp_Object newdir; newdir = Fexpand_file_name (build_string ("../etc/"), lispdir); tem = Fexpand_file_name (build_string ("NEWS"), newdir); - tem1 = Ffile_exists_p (tem); - if (!NILP (tem1)) + if (file_access_p (SSDATA (tem), F_OK)) Vdata_directory = newdir; } } -- 2.39.5