mirror of
https://github.com/storytold/gridcraft.git
synced 2026-10-30 13:46:47 -06:00
Every nested command a dry run executes is journaled, so a long macro pushes the journal past its limit and the journal drops its oldest entries. The restore cut the journal back to its old length, which then kept entries from the dry run and pointed Record Actions at the wrong place. The session now counts the entries its journal has dropped (journal_dropped) and truncates with its size bookkeeping (truncate_journal); the restore keeps the old length less what was dropped meanwhile and moves the recording's start back by the same count. Regression test with 12,000 nested steps.