From 6f09f6ed089766e1bd113d343576da7dd963740b Mon Sep 17 00:00:00 2001 From: "Aaron S. Hawley" Date: Fri, 16 Mar 2012 00:21:23 -0700 Subject: [PATCH] tar-mode buffer-read-only fix * lisp/tar-mode.el (tar-mode): Fix saving by conditionally undoing `special-mode' setting of `buffer-read-only'. Fixes: debbugs:11010 --- lisp/ChangeLog | 5 +++++ lisp/tar-mode.el | 3 +++ 2 files changed, 8 insertions(+) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 35da6fc9e31..3fd5cbfcf26 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2012-03-16 Aaron S. Hawley + + * tar-mode.el (tar-mode): Fix saving by conditionally undoing + `special-mode' setting of `buffer-read-only'. (Bug#11010) + 2012-03-16 Glenn Morris * view.el (view-buffer, view-buffer-other-window) diff --git a/lisp/tar-mode.el b/lisp/tar-mode.el index 949ac4c0889..3eb2be15698 100644 --- a/lisp/tar-mode.el +++ b/lisp/tar-mode.el @@ -634,6 +634,9 @@ inside of a tar archive without extracting it and re-archiving it. See also: variables `tar-update-datestamp' and `tar-anal-blocksize'. \\{tar-mode-map}" + (and buffer-file-name + (file-writable-p buffer-file-name) + (setq buffer-read-only nil)) ; undo what `special-mode' did (make-local-variable 'tar-parse-info) (set (make-local-variable 'require-final-newline) nil) ; binary data, dude... (set (make-local-variable 'local-enable-local-variables) nil) -- 2.39.5