branch: elpa/hyperdrive
commit dead3de76396bd4509a6e9edcbb88396cb28e8be
Author: Adam Porter <a...@alphapapa.net>
Commit: Adam Porter <a...@alphapapa.net>

    Fix: (hyperdrive-delete) Add workaround for hypercore-fetch bug
---
 hyperdrive-lib.el | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/hyperdrive-lib.el b/hyperdrive-lib.el
index 8ea51ef3d5..38a08c0933 100644
--- a/hyperdrive-lib.el
+++ b/hyperdrive-lib.el
@@ -887,9 +887,12 @@ Call ELSE with `plz-error' struct if request fails."
             (pcase-let* (((cl-struct plz-response headers) response)
                          ((map etag) headers)
                          (nonexistent-entry (hyperdrive-copy-tree entry t)))
-              (setf (hyperdrive-entry-version nonexistent-entry) 
(string-to-number etag))
-              (hyperdrive--fill-latest-version (hyperdrive-entry-hyperdrive 
entry) headers)
-              (hyperdrive-update-nonexistent-version-range nonexistent-entry)
+              (unless (hyperdrive--entry-directory-p entry)
+                ;; FIXME: hypercore-fetch bug doesn't update version
+                ;; number when deleting a directory.
+                (setf (hyperdrive-entry-version nonexistent-entry) 
(string-to-number etag))
+                (hyperdrive--fill-latest-version (hyperdrive-entry-hyperdrive 
entry) headers)
+                (hyperdrive-update-nonexistent-version-range 
nonexistent-entry))
               (funcall then response)))
     :else else))
 

Reply via email to