diff options
author | Philip K <philipk@posteo.net> | 2020-08-05 22:57:01 +0200 |
---|---|---|
committer | Dmitry Gutov <dgutov@yandex.ru> | 2020-08-06 17:49:53 +0300 |
commit | cc365ca6d8ce24b882a39a062ce64f796693f974 (patch) | |
tree | 26bd32c0421c8888712dc2026ce7978616e836cc | |
parent | c05f1020cecb4ef7d516e6575c86bf009c2e6f00 (diff) | |
download | emacs-cc365ca6d8ce24b882a39a062ce64f796693f974.tar.gz |
Remove usages of assoc-delete-all in project.el
assoc-delete-all is not available for users who have installed
project.el via ELPA on older Emacs versions (bug#42668).
* lisp/progmodes/project.el
(project-remember-project, project--remove-from-project-list):
Replace assoc-delete-all with equivalent alternatives.
-rw-r--r-- | lisp/progmodes/project.el | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el index 51b9347bb93..b6161351f0b 100644 --- a/lisp/progmodes/project.el +++ b/lisp/progmodes/project.el @@ -1166,7 +1166,9 @@ Save the result in `project-list-file' if the list of projects has changed." (project--ensure-read-project-list) (let ((dir (project-root pr))) (unless (equal (caar project--list) dir) - (setq project--list (assoc-delete-all dir project--list)) + (dolist (ent project--list) + (when (equal dir (car ent)) + (setq project--list (delq ent project--list)))) (push (list dir) project--list) (project--write-project-list)))) @@ -1176,8 +1178,8 @@ If the directory was in the list before the removal, save the result in `project-list-file'. Announce the project's removal from the list." (project--ensure-read-project-list) - (when (assoc pr-dir project--list) - (setq project--list (assoc-delete-all pr-dir project--list)) + (when-let ((ent (assoc pr-dir project--list))) + (setq project--list (delq ent project--list)) (message "Project `%s' not found; removed from list" pr-dir) (project--write-project-list))) |