Skip to content

Commit 2cb3686

Browse files
committed
Fix ctrie GCAS
1 parent 61d480d commit 2cb3686

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

trie/ctrie/ctrie.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -813,8 +813,8 @@ func gcasComplete(i *iNode, m *mainNode, ctrie *Ctrie) *mainNode {
813813
// Signals GCAS failure. Swap old value back into I-node.
814814
fn := prev.failed
815815
if atomic.CompareAndSwapPointer((*unsafe.Pointer)(unsafe.Pointer(&i.main)),
816-
unsafe.Pointer(m), unsafe.Pointer(fn.prev)) {
817-
return fn.prev
816+
unsafe.Pointer(m), unsafe.Pointer(fn)) {
817+
return fn
818818
}
819819
m = (*mainNode)(atomic.LoadPointer(
820820
(*unsafe.Pointer)(unsafe.Pointer(&i.main))))

0 commit comments

Comments
 (0)