summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip K <philipk@posteo.net>2020-08-05 22:57:01 +0200
committerDmitry Gutov <dgutov@yandex.ru>2020-08-06 17:49:53 +0300
commitcc365ca6d8ce24b882a39a062ce64f796693f974 (patch)
tree26bd32c0421c8888712dc2026ce7978616e836cc
parentc05f1020cecb4ef7d516e6575c86bf009c2e6f00 (diff)
downloademacs-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.el8
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)))