From aa44308429e952388a2403e8dda6c1cbf6c5d802 Mon Sep 17 00:00:00 2001 From: Masatake YAMATO Date: Sun, 22 Oct 2017 18:22:40 +0900 Subject: [PATCH] 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. --- lisp/progmodes/cpp.el | 9 ++++++--- 1 file 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." -- 2.39.2