Skip to content

Commit

Permalink
stock: fix use of genesis in export
Browse files Browse the repository at this point in the history
  • Loading branch information
dr-orlovsky committed Feb 13, 2025
1 parent e98fa80 commit 47d6328
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions src/stock.rs
Original file line number Diff line number Diff line change
Expand Up @@ -127,24 +127,24 @@ impl<S: Supply> Stock<S> {
.into_iter()
.map(|terminal| self.state.addr(*terminal.borrow()).opid)
.collect::<BTreeSet<_>>();
let genesis_opid = self.articles.contract.genesis_opid();
queue.remove(&genesis_opid);
let mut opids = queue.clone();
while let Some(opid) = queue.pop_first() {
let st = self.supply.trace_mut().read(opid);
for prev in st.destroyed.into_keys().map(|a| a.opid) {
if opids.contains(&prev) {
continue;
if !opids.contains(&prev) && prev != genesis_opid {
opids.insert(prev);
queue.insert(prev);
}
opids.insert(prev);
queue.insert(prev);
}
}
opids.remove(&self.articles.contract.genesis_opid());

// TODO: Include all operations defining published state

// Write articles
writer = self.articles.strict_encode(writer)?;
writer = aux(self.articles.contract.genesis_opid(), writer)?;
writer = aux(genesis_opid, writer)?;
// Stream operations
for (opid, op) in self.operations() {
if !opids.remove(&opid) {
Expand Down

0 comments on commit 47d6328

Please sign in to comment.