branch: externals/dict-tree
commit 9e6d0f230df987a6bc446b77f2388c0d8201a6bf
Author: Toby Cubitt <toby-predict...@dr-qubit.org>
Commit: tsc25 <toby-predict...@dr-qubit.org>

    Fixed bug when deleting non-existent entries.
---
 dict-tree.el | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/dict-tree.el b/dict-tree.el
index e744da1..7e8728a 100644
--- a/dict-tree.el
+++ b/dict-tree.el
@@ -1039,7 +1039,8 @@ Returns non-nil if KEY was deleted, nil if KEY was not in 
DICT."
              (dictree--meta-dict-list dict)))))
 
     ;; return deleted key/data pair
-    (cons (car deleted) (dictree--unwrap-data (cdr deleted)))))
+    (when deleted
+      (cons (car deleted) (dictree--unwrap-data (cdr deleted))))))
 
 
 
@@ -1372,11 +1373,13 @@ descending order if REVERSE is non-nil."
            dictree-mapf--accumulate)
        (while (setq dictree-mapf--entry
                     (dictree-stack-pop dictree-mapf--stack))
-         (funcall dictree-mapf--combinator
-                  (funcall dictree-mapf--function
-                           (car dictree-mapf--entry)
-                           (cdr dictree-mapf--entry)))))
-      )))
+         (setq dictree-mapf--accumulate
+               (funcall dictree-mapf--combinator
+                        (funcall dictree-mapf--function
+                                 (car dictree-mapf--entry)
+                                 (cdr dictree-mapf--entry))
+                        dictree-mapf--accumulate)))
+       dictree-mapf--accumulate))))
 
 
 

Reply via email to