ref: 8ca246b84f53a9c5da0d781aba0950ceb6dfa952
parent: 2b79e9eed57df7edd0549706ae59b7021fa0f0a8
author: Michael Forney <mforney@mforney.org>
date: Sun Feb 27 16:51:01 EST 2022
tree: copy value into buffer before applying updates
--- a/tree.c
+++ b/tree.c
@@ -465,6 +465,8 @@
goto Copy;
case 0:
i++;
+ if(m.op != Oinsert)
+ cpkvp(&v, &v, buf, sizeof(buf));
while(j < up->hi){
if(m.op == Oclearb){
bp = unpackbp(v.v, v.nv);
@@ -657,6 +659,8 @@
goto Copy;
case 0:
i++;
+ if(m.op != Oinsert)
+ cpkvp(&v, &v, buf, sizeof(buf));
while(j < up->hi){
ok = apply(&v, &m, buf, sizeof(buf));
Copy: