diff --git a/persistent-data/space-maps/recursive.cc b/persistent-data/space-maps/recursive.cc index 634c530..46d6ed5 100644 --- a/persistent-data/space-maps/recursive.cc +++ b/persistent-data/space-maps/recursive.cc @@ -216,7 +216,10 @@ namespace { switch (op.op_) { case INC: - sm_->inc(b, op.rc_); + if (op.rc_ > 0) + sm_->inc(b, op.rc_); + else if (op.rc_ < 0) + sm_->dec(b, -op.rc_); break; case SET: