summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--utils.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/utils.c b/utils.c
index 0b80064..0b13f86 100644
--- a/utils.c
+++ b/utils.c
@@ -40,8 +40,10 @@ vlist_add(struct vlist_tree *tree, struct vlist_node *node)
anode = avl_find(&tree->avl, key);
if (anode) {
old_node = container_of(anode, struct vlist_node, avl);
- if (tree->keep_old || tree->no_delete)
+ if (tree->keep_old || tree->no_delete) {
+ old_node->version = tree->version;
goto update_only;
+ }
avl_delete(&tree->avl, anode);
}