diff options
author | Masatake YAMATO <yamato@redhat.com> | 2017-10-22 18:22:40 +0900 |
---|---|---|
committer | Noam Postavsky <npostavs@gmail.com> | 2017-10-22 11:33:40 -0400 |
commit | aa44308429e952388a2403e8dda6c1cbf6c5d802 (patch) | |
tree | e917f125f941a2e74bfe5ef29390fcdf0fa969d8 /lisp/progmodes/cpp.el | |
parent | 2fddfb7ce770f61313f058c7a899c2fbce055d21 (diff) | |
download | emacs-aa44308429e952388a2403e8dda6c1cbf6c5d802.tar.gz |
Fix reading and writing cpp-config-file under home directory (Bug#28685)
* lisp/progmodes/cpp.el (cpp-edit-load): Load ~/.cpp.el when
it is readable.
(cpp-edit-save): Write to ~/.cpp.el when it is wriable.
Diffstat (limited to 'lisp/progmodes/cpp.el')
-rw-r--r-- | lisp/progmodes/cpp.el | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lisp/progmodes/cpp.el b/lisp/progmodes/cpp.el index 8aaebdde5bc..186312f333b 100644 --- a/lisp/progmodes/cpp.el +++ b/lisp/progmodes/cpp.el @@ -577,7 +577,7 @@ You can also use the keyboard accelerators indicated like this: [K]ey." ((file-readable-p cpp-config-file) (load-file cpp-config-file)) ((file-readable-p (concat "~/" cpp-config-file)) - (load-file cpp-config-file))) + (load-file (concat "~/" cpp-config-file)))) (if (derived-mode-p 'cpp-edit-mode) (cpp-edit-reset))) @@ -586,7 +586,10 @@ You can also use the keyboard accelerators indicated like this: [K]ey." (interactive) (require 'pp) (with-current-buffer cpp-edit-buffer - (let ((buffer (find-file-noselect cpp-config-file))) + (let* ((config-file (if (file-writable-p cpp-config-file) + cpp-config-file + (concat "~/" cpp-config-file))) + (buffer (find-file-noselect config-file))) (set-buffer buffer) (erase-buffer) (pp (list 'setq 'cpp-known-face @@ -601,7 +604,7 @@ You can also use the keyboard accelerators indicated like this: [K]ey." (list 'quote cpp-unknown-writable)) buffer) (pp (list 'setq 'cpp-edit-list (list 'quote cpp-edit-list)) buffer) - (write-file cpp-config-file)))) + (write-file config-file)))) (defun cpp-edit-home () "Switch back to original buffer." |