aboutsummaryrefslogtreecommitdiff
path: root/tests/test-prog-shell--make-script-executable.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-20 17:38:27 -0400
committerCraig Jennings <c@cjennings.net>2026-06-20 17:38:27 -0400
commit440cc5c66610e1019295a540ec839559025a419a (patch)
treed1c9b945d82c6db92ed00d47e73ed02b6b0051e8 /tests/test-prog-shell--make-script-executable.el
parente03a3fa2e8fe080dbf8c7f84531bdb10c8a957cb (diff)
downloaddotemacs-440cc5c66610e1019295a540ec839559025a419a.tar.gz
dotemacs-440cc5c66610e1019295a540ec839559025a419a.zip
refactor(theme-studio): restore studio state after mutating gates via withSavedState
Seven gates (locktest, mocktest, gallerytest, safetest, ndtest, viewlocktest, expandpersisttest) mutated PALETTE/MAP/SYNTAX/UIMAP/PKGMAP/LOCKED and restored nothing, so opening the studio at one of those #hashes left its state corrupted for interactive use. Wrap each in withSavedState(keys, body), scoped to the keys that gate touches: snapshot the named globals, run the body, restore in a finally. Uses a JSON-round-trip clone (the studio objects carry values structuredClone throws on — the same clone the gates' own local saves use). The 14 gates that already restore locally are left as-is. Verified: all 44 gates green, the restore round-trip holds for reassignment + in-place + Set mutation, and a forced assertion in a wrapped gate still reports FAIL.
Diffstat (limited to 'tests/test-prog-shell--make-script-executable.el')
0 files changed, 0 insertions, 0 deletions