diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-25 21:51:13 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-25 21:51:13 -0500 |
| commit | 33c5da1bc33b59f2969f176f434ca66050deab23 (patch) | |
| tree | 3e342d597eb69b2818127301c84a789f42a3e7b1 /tests/test-integration-acceptance.el | |
| parent | dc2ca47ea5ab053722bf59ae1fde92e3786f6f41 (diff) | |
| download | pearl-33c5da1bc33b59f2969f176f434ca66050deab23.tar.gz pearl-33c5da1bc33b59f2969f176f434ca66050deab23.zip | |
fix(save): guard atomic-saver commit callbacks against a killed buffer
The per-field atomic savers advance the baseline and rewrite the display through the marker (org-entry-put marker / org-with-point-at marker) inside the async push callback. If the buffer is killed before the push lands, those touch a dead marker and signal. The deleted pearl--push-issue-field carried this guard, but it went away with the immediate-push setters and the atomic engine never picked it up.
pearl--run-atomic-field-save now skips the commit when the marker's buffer is dead (a new pearl--marker-live-p, which also passes a nil marker for synthetic callers) and still reports the remote outcome -- the push already landed, so only the local buffer update is moot. All three commit sites are guarded: the clean push, the converged-remote case, and the use-remote conflict resolution.
Diffstat (limited to 'tests/test-integration-acceptance.el')
0 files changed, 0 insertions, 0 deletions
