Paul Eggert
a6ad98ad66
Improve make-temp-file performance on local files
...
For the motivation behind this patch, please see Bug#28023 and:
http://emacshorrors.com/posts/make-temp-name.html
Although, given the recent changes to Tramp, the related security
problem in make-temp-file is already fixed, make-temp-file still has
several unnecessary system calls. In the typical case on GNU/Linux,
this patch replaces 8 syscalls (symlink, open, close, readlinkat, uname,
getpid, unlink, umask) by 2 (open, close).
* admin/merge-gnulib (GNULIB_MODULES): Add tempname, now
that Emacs is using it directly.
* configure.ac (AUTO_DEPEND): Remove AC_SYS_LONG_FILE_NAMES;
no longer needed.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lisp/files.el (files--make-magic-temp-file): Rename from
make-temp-file.
(make-temp-file): Use make-temp-file-internal for
non-magic file names.
* src/fileio.c: Include tempname.h.
(make_temp_name_tbl, make_temp_name_count)
(make_temp_name_count_initialized_p, make_temp_name): Remove.
(Fmake_temp_file_internal): New function.
(Fmake_temp_name): Use it.
* src/filelock.c (get_boot_time): Use Fmake_temp_file_internal
instead of make_temp_name.
2017-08-12 15:14:45 -07:00
..
2017-03-14 14:50:02 -07:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-03-14 14:50:02 -07:00
2016-12-31 19:42:26 -08:00
2017-02-23 09:15:06 -08:00
2017-02-23 09:15:06 -08:00
2016-12-31 19:42:26 -08:00
2015-09-25 00:23:18 -07:00
2017-02-02 07:50:22 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-03-14 14:50:02 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-03-03 09:19:08 -08:00
2017-03-03 09:19:08 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-06-17 15:13:21 -07:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-03-05 13:31:33 -08:00
2017-05-14 01:29:29 -07:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:10:47 -08:00
2016-12-31 19:42:26 -08:00
2017-07-16 16:29:12 -07:00
2016-12-31 19:42:26 -08:00
2017-05-14 01:29:29 -07:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-07-13 19:24:49 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-05-14 01:29:29 -07:00
2017-04-27 15:24:07 -07:00
2017-01-01 01:10:47 -08:00
2016-12-31 19:42:26 -08:00
2017-07-16 16:29:11 -07:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-04-06 16:30:09 -07:00
2017-01-01 04:01:41 +00:00
2017-04-06 16:30:09 -07:00
2017-04-09 00:55:23 -07:00
2017-04-09 00:55:23 -07:00
2017-04-09 00:55:23 -07:00
2017-06-11 17:30:06 -07:00
2017-06-11 17:30:06 -07:00
2017-05-14 01:29:29 -07:00
2017-04-09 00:55:23 -07:00
2017-06-17 15:22:13 -07:00
2017-01-01 01:32:56 -08:00
2017-05-14 01:29:29 -07:00
2017-08-12 15:14:45 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-05-25 00:13:33 -07:00
2016-12-31 19:42:26 -08:00
2017-03-19 13:09:31 -07:00
2017-05-01 15:33:26 -07:00
2017-05-01 15:33:26 -07:00
2016-12-31 19:42:26 -08:00
2017-04-06 13:43:06 -07:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-01-01 01:32:56 -08:00
2017-06-17 15:40:58 +02:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-05-14 01:29:29 -07:00
2017-07-23 22:23:49 -07:00
2016-09-30 12:38:52 -07:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-05-14 12:40:03 -07:00
2017-03-19 13:09:31 -07:00
2016-12-31 19:42:26 -08:00
2017-03-19 13:09:31 -07:00
2017-07-13 19:24:49 -07:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-07-16 16:29:11 -07:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-05-14 01:29:29 -07:00
2017-01-01 01:10:47 -08:00
2017-05-14 12:40:03 -07:00
2017-08-09 11:46:06 -07:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-05-01 15:33:26 -07:00
2017-02-02 07:50:22 -08:00
2017-05-01 15:33:26 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-03-19 13:09:31 -07:00
2015-10-13 23:34:47 -07:00
2016-12-31 19:42:26 -08:00
2015-10-13 23:34:47 -07:00
2017-05-14 01:29:29 -07:00
2017-06-22 11:22:53 -07:00
2017-05-14 01:29:29 -07:00
2016-12-31 19:42:26 -08:00
2017-02-02 07:50:22 -08:00
2016-12-31 19:42:26 -08:00
2017-03-14 14:50:02 -07:00
2017-07-13 19:24:49 -07:00