ref: e6792282e43bdd043dbdd2e8949a0e19457f4911
parent: ff9b3fe8899798ef13666ebc763053f1fd5dee72
author: Ori Bernstein <ori@eigenstate.org>
date: Fri Nov 10 12:09:14 EST 2023
snap: when taking mutable snaps, the base is the forked snap, not its predecessor
--- a/snap.c
+++ b/snap.c
@@ -359,8 +359,8 @@
n->nref = 0;
n->ht = t->ht;
n->bp = t->bp;
- n->pred = t->pred;
n->succ = -1;
+ n->pred = t->gen;
n->base = t->gen;
n->gen = aincv(&fs->nextgen, 1);
n->memgen = aincv(&fs->nextgen, 1);