Xrefs and data links: follow stored paths only on this computer or the drawing's share

Xref paths saved in a drawing (on open, on Reload, in the External
References list, XOPEN, nested xrefs) and table data-link paths re-read by
DATALINKUPDATE go through doc_path::resolve (craft-docpath): relative
paths resolve beside the drawing that stores them, and paths to other
computers, devices and URLs are not opened. Such an xref is Unresolved
with the reason, unless a file of its name is beside the host drawing.
Paths given to XATTACH, -XREF Path and DATALINK are used as given.

One load of xrefs reads at most 1 GB from referenced files in total.
This commit is contained in:
aiongg
2026-10-16 17:18:34 +00:00
parent 972ae7888c
commit 8fe7c421ea
10 changed files with 334 additions and 81 deletions
Generated
+5
View File
@@ -634,6 +634,7 @@ dependencies = [
"cadcraft-geom",
"cadcraft-io",
"cadcraft-render",
"craft-docpath",
"log",
"rstar",
"serde",
@@ -927,6 +928,10 @@ version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f8f80099a98041a3d1622845c271458a2d73e688351bf3cb999266764b81d48"
[[package]]
name = "craft-docpath"
version = "0.1.0"
[[package]]
name = "craft-ui"
version = "0.1.0"