cad-editor/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
NgoQuocViet2001 c88f07d219 fix(io): stop the drawing lock blocking our own reads on Windows
Saving to a path that already holds a drawing fails on Windows with
"could not verify <path> before saving: ... (os error 33)". Save As over any
existing drawing is affected; saving to a new path is not.

EditLease::acquire() opens the destination and takes the platform drawing
lock on it, then the save fingerprints the same path to check nothing changed
underneath. LockFileEx is mandatory and scoped to the handle that took it, so
that second open is refused against our own lock, lands in the non-NotFound
arm and aborts the save. flock on Unix is advisory and the second open
succeeds, so neither CI nor a Linux desktop sees it.

Read through the handle the lease already holds instead. A duplicate shares
the lock ownership, so the pre-replace re-check on the save worker can use
one too rather than re-opening the path.

The same collision reached the headless open op, which read a path this
session may hold leased: automation's save_then_open_round_trips fails on
main for that reason, one line after the save it no longer reaches.
2026-08-17 22:49:54 +07:00
..
app fix(io): stop the drawing lock blocking our own reads on Windows 2026-08-17 22:49:54 +07:00
entities fix: restore workspace verification 2026-08-15 23:11:26 +03:00
io fix(io): stop the drawing lock blocking our own reads on Windows 2026-08-17 22:49:54 +07:00
modules fix: restore workspace verification 2026-08-15 23:11:26 +03:00
plugin fix: restore workspace verification 2026-08-15 23:11:26 +03:00
scene fix(mtext): honor background contrast 2026-08-16 23:58:17 +03:00
shaders fix(hatch): clip fill with kernel mesh 2026-08-13 00:29:03 +03:00
ui perf(ribbon): stop building and laying out 5 panel renderings per frame 2026-08-16 10:23:44 +01:00
cli.rs fix(renderer): add automatic compat fallback 2026-07-24 17:05:54 +03:00
command.rs fix: allow multiple stretch selection windows 2026-08-15 15:01:05 -03:00
config.rs feat(web): persist browser state 2026-07-29 00:44:00 +03:00
discussions.rs fix(plugins): trust platform certificates 2026-07-29 15:00:07 +03:00
i18n.rs feat(i18n): add seven UI locales 2026-08-14 11:06:53 +03:00
lib.rs feat(locale): add Fluent translations 2026-08-02 18:53:38 +03:00
locale_catalog.rs refactor(i18n): group Fluent attributes 2026-08-09 11:12:47 +03:00
main.rs feat(locale): add Fluent translations 2026-08-02 18:53:38 +03:00
network.rs fix(plugins): trust platform certificates 2026-07-29 15:00:07 +03:00
par.rs feat(wasm): sequential rayon shim for the web build 2026-06-16 17:11:20 +03:00
patreon.rs fix: normalize recent Patreon support 2026-08-04 12:17:21 +03:00
perf.rs perf(scene): make geometry edits incremental 2026-07-28 17:16:27 +03:00
snap.rs fix(snap): align extension tracking 2026-08-09 23:55:06 +03:00
sys.rs fix(linux): focus browser on external links 2026-07-30 21:07:31 +03:00
videos.rs fix(plugins): trust platform certificates 2026-07-29 15:00:07 +03:00