]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix permission-denied issue in MS-Windows startup
authorPaul Eggert <eggert@cs.ucla.edu>
Wed, 18 Sep 2019 10:06:10 +0000 (03:06 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 18 Sep 2019 10:06:49 +0000 (03:06 -0700)
* src/callproc.c (init_callproc): Use file_access_p rather
than Ffile_exists_p during startup (Bug#37445).

src/callproc.c

index 1ac0bdc710a1715c066c0df6c6f2a2939e90f798..dbbf15c792a7cb62ea5fea93d08472ea39fec5d1 100644 (file)
@@ -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;
        }
     }