From: Glenn Morris Date: Wed, 26 Mar 2014 01:14:44 +0000 (-0400) Subject: Remove the build-time option CLASH_DETECTION X-Git-Tag: emacs-25.0.90~2640^2~333 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=11ee65afc20d41f1fc31fe2ead84b2203b4bfeb0;p=emacs.git Remove the build-time option CLASH_DETECTION Every platform supports it, and the runtime option `create-lockfiles' replaces it. * configure.ac (CLASH_DETECTION): Remove option. * lisp/files.el (lock-buffer, unlock-buffer, file-locked-p): Remove fallback aliases, since they are always defined now. * src/buffer.c (Frestore_buffer_modified_p, Fkill_buffer): * src/emacs.c (shut_down_emacs): * src/fileio.c (Finsert_file_contents, write_region): * src/filelock.c (top-level, syms_of_filelock): * src/insdel.c (prepare_to_modify_buffer_1): CLASH_DETECTION is always defined now. * admin/CPP-DEFINES: Remove CLASH_DETECTION. --- diff --git a/ChangeLog b/ChangeLog index 627fd22a1a6..14587cfd24e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,11 @@ +2014-03-26 Glenn Morris + + * configure.ac (CLASH_DETECTION): Remove option. Every platform + supports it, and the runtime option `create-lockfiles' replaces it. + 2014-03-23 Daniel Colascione - * configure.ac: (Bug#17069) Include GFILENOTIFY objects in glib - check. + * configure.ac: (Bug#17069) Include GFILENOTIFY objects in glib check. 2014-03-22 Glenn Morris diff --git a/admin/CPP-DEFINES b/admin/CPP-DEFINES index 27d87dcaa2a..8bfe2cac570 100644 --- a/admin/CPP-DEFINES +++ b/admin/CPP-DEFINES @@ -86,7 +86,6 @@ BROKEN_FIONREAD BROKEN_GET_CURRENT_DIR_NAME BROKEN_NON_BLOCKING_CONNECT BROKEN_PTY_READ_AFTER_EAGAIN -CLASH_DETECTION DATA_SEG_BITS DEFAULT_SOUND_DEVICE DEVICE_SEP diff --git a/configure.ac b/configure.ac index f726251b219..a4a6125051c 100644 --- a/configure.ac +++ b/configure.ac @@ -3897,14 +3897,6 @@ if test "${opsys}" != "mingw32"; then in the full name stands for the login id.]) fi -dnl Every platform that uses configure supports this. -dnl There is a create-lockfiles option you can -dnl customize if you do not want the lock files to be written. -dnl So it is not clear that this #define still needs to exist. -AC_DEFINE(CLASH_DETECTION, 1, [Define if you want lock files to be written, - so that Emacs can tell instantly when you try to modify a file that - someone else has modified in his/her Emacs.]) - dnl Everybody supports this, except MS. dnl Seems like the kind of thing we should be testing for, though. ## Note: PTYs are broken on darwin <6. Use at your own risk. diff --git a/lisp/ChangeLog b/lisp/ChangeLog index aee5738dc43..0bc53b69da0 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2014-03-26 Glenn Morris + + * files.el (lock-buffer, unlock-buffer, file-locked-p): + Remove fallback aliases, since they are always defined now. + 2014-03-24 Daniel Colascione * emacs-lisp/cl-macs.el (cl--do-arglist): Use `plist-member' diff --git a/lisp/files.el b/lisp/files.el index a17677b564d..5883c8c348e 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -559,14 +559,6 @@ A value of nil means ignore them; anything else means query." (other :tag "Query" other)) :group 'find-file) -;; Avoid losing in versions where CLASH_DETECTION is disabled. -(or (fboundp 'lock-buffer) - (defalias 'lock-buffer 'ignore)) -(or (fboundp 'unlock-buffer) - (defalias 'unlock-buffer 'ignore)) -(or (fboundp 'file-locked-p) - (defalias 'file-locked-p 'ignore)) - (defcustom view-read-only nil "Non-nil means buffers visiting files read-only do so in view mode. In fact, this means that all read-only buffers normally have diff --git a/src/ChangeLog b/src/ChangeLog index 31d90663206..87c2d364b05 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,12 @@ +2014-03-26 Glenn Morris + + * buffer.c (Frestore_buffer_modified_p, Fkill_buffer): + * emacs.c (shut_down_emacs): + * fileio.c (Finsert_file_contents, write_region): + * filelock.c (top-level, syms_of_filelock): + * insdel.c (prepare_to_modify_buffer_1): + CLASH_DETECTION is always defined now. + 2014-03-25 Eli Zaretskii * w32.c (w32_delayed_load): Call DisableThreadLibraryCalls on the diff --git a/src/buffer.c b/src/buffer.c index daafbcef0e4..5e923d26f3f 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -1,7 +1,6 @@ /* Buffer manipulation primitives for GNU Emacs. -Copyright (C) 1985-1989, 1993-1995, 1997-2014 Free Software Foundation, -Inc. +Copyright (C) 1985-1989, 1993-1995, 1997-2014 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -1380,7 +1379,6 @@ It is not ensured that mode lines will be updated to show the modified state of the current buffer. Use with care. */) (Lisp_Object flag) { -#ifdef CLASH_DETECTION Lisp_Object fn; /* If buffer becoming modified, lock the file. @@ -1400,7 +1398,6 @@ state of the current buffer. Use with care. */) else if (already && NILP (flag)) unlock_file (fn); } -#endif /* CLASH_DETECTION */ /* Here we have a problem. SAVE_MODIFF is used here to encode buffer-modified-p (as SAVE_MODIFF 0) { -#ifdef CLASH_DETECTION if (!NILP (BVAR (current_buffer, file_truename)) /* Make binding buffer-file-name to nil effective. */ && !NILP (BVAR (current_buffer, filename)) && SAVE_MODIFF >= MODIFF) we_locked_file = 1; -#endif /* CLASH_DETECTION */ prepare_to_modify_buffer (GPT, GPT, NULL); } @@ -4185,10 +4183,8 @@ by calling `format-decode', which see. */) if (inserted == 0) { -#ifdef CLASH_DETECTION if (we_locked_file) unlock_file (BVAR (current_buffer, file_truename)); -#endif Vdeactivate_mark = old_Vdeactivate_mark; } else @@ -4337,14 +4333,12 @@ by calling `format-decode', which see. */) SAVE_MODIFF = MODIFF; BUF_AUTOSAVE_MODIFF (current_buffer) = MODIFF; XSETFASTINT (BVAR (current_buffer, save_length), Z - BEG); -#ifdef CLASH_DETECTION if (NILP (handler)) { if (!NILP (BVAR (current_buffer, file_truename))) unlock_file (BVAR (current_buffer, file_truename)); unlock_file (filename); } -#endif /* CLASH_DETECTION */ if (not_regular) xsignal2 (Qfile_error, build_string ("not a regular file"), orig_filename); @@ -4814,13 +4808,11 @@ write_region (Lisp_Object start, Lisp_Object end, Lisp_Object filename, if (!STRINGP (start) && !NILP (BVAR (current_buffer, selective_display))) coding.mode |= CODING_MODE_SELECTIVE_DISPLAY; -#ifdef CLASH_DETECTION if (open_and_close_file && !auto_saving) { lock_file (lockname); file_locked = 1; } -#endif /* CLASH_DETECTION */ encoded_filename = ENCODE_FILE (filename); fn = SSDATA (encoded_filename); @@ -4842,10 +4834,8 @@ write_region (Lisp_Object start, Lisp_Object end, Lisp_Object filename, if (desc < 0) { int open_errno = errno; -#ifdef CLASH_DETECTION if (file_locked) unlock_file (lockname); -#endif /* CLASH_DETECTION */ UNGCPRO; report_file_errno ("Opening output file", filename, open_errno); } @@ -4860,10 +4850,8 @@ write_region (Lisp_Object start, Lisp_Object end, Lisp_Object filename, if (ret < 0) { int lseek_errno = errno; -#ifdef CLASH_DETECTION if (file_locked) unlock_file (lockname); -#endif /* CLASH_DETECTION */ UNGCPRO; report_file_errno ("Lseek error", filename, lseek_errno); } @@ -5006,10 +4994,8 @@ write_region (Lisp_Object start, Lisp_Object end, Lisp_Object filename, unbind_to (count, Qnil); -#ifdef CLASH_DETECTION if (file_locked) unlock_file (lockname); -#endif /* CLASH_DETECTION */ /* Do this before reporting IO error to avoid a "file has changed on disk" warning on diff --git a/src/filelock.c b/src/filelock.c index 5252db09104..cc5c821cadd 100644 --- a/src/filelock.c +++ b/src/filelock.c @@ -55,8 +55,6 @@ along with GNU Emacs. If not, see . */ #include "w32.h" /* for dostounix_filename */ #endif -#ifdef CLASH_DETECTION - #ifdef HAVE_UTMP_H #include #endif @@ -837,8 +835,6 @@ t if it is locked by you, else a string saying which user has locked it. */) return ret; } -#endif /* CLASH_DETECTION */ - void syms_of_filelock (void) { @@ -850,9 +846,7 @@ syms_of_filelock (void) doc: /* Non-nil means use lockfiles to avoid editing collisions. */); create_lockfiles = 1; -#ifdef CLASH_DETECTION defsubr (&Sunlock_buffer); defsubr (&Slock_buffer); defsubr (&Sfile_locked_p); -#endif } diff --git a/src/insdel.c b/src/insdel.c index 1c9bafd6004..5bd97f98613 100644 --- a/src/insdel.c +++ b/src/insdel.c @@ -1,6 +1,6 @@ /* Buffer insertion/deletion and gap motion for GNU Emacs. - Copyright (C) 1985-1986, 1993-1995, 1997-2014 Free Software - Foundation, Inc. + +Copyright (C) 1985-1986, 1993-1995, 1997-2014 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -1829,21 +1829,11 @@ prepare_to_modify_buffer_1 (ptrdiff_t start, ptrdiff_t end, else base_buffer = current_buffer; -#ifdef CLASH_DETECTION if (!NILP (BVAR (base_buffer, file_truename)) /* Make binding buffer-file-name to nil effective. */ && !NILP (BVAR (base_buffer, filename)) && SAVE_MODIFF >= MODIFF) lock_file (BVAR (base_buffer, file_truename)); -#else - /* At least warn if this file has changed on disk since it was visited. */ - if (!NILP (BVAR (base_buffer, filename)) - && SAVE_MODIFF >= MODIFF - && NILP (Fverify_visited_file_modtime (Fcurrent_buffer ())) - && !NILP (Ffile_exists_p (BVAR (base_buffer, filename)))) - call1 (intern ("ask-user-about-supersession-threat"), - BVAR (base_buffer,filename)); -#endif /* not CLASH_DETECTION */ /* If `select-active-regions' is non-nil, save the region text. */ /* FIXME: Move this to Elisp (via before-change-functions). */