Files
leocad/common
Leonardo Zide 3019471e71 Make the library responsible for piece identity destruction
PieceInfo::Unload previously called back into the library to delete itself, making model and external-project teardown difficult to follow. Unregister and delete local identities in the library, and limit PieceInfo cleanup to its mesh, borrowed model pointer, and owned project.

Always clean owned projects in the PieceInfo destructor, including meshless containers. Bulk unload destroys outer external projects before remaining local identities and the shared catalog so nested teardown can safely release references.

Validation: debug build and lifetime checks covering final-reference release, retained deleted models, direct container deletion, 30 nested bulk-unload cycles, and 20 owner deletions with pending loads. AddressSanitizer stalled before main; sanitizer coverage remains unverified.
2026-10-11 22:49:47 -07:00
..
2026-10-05 13:55:22 -07:00
2026-03-10 21:11:40 -07:00
2026-03-10 21:11:40 -07:00
2026-09-19 10:01:40 -07:00
…
2026-04-29 20:59:17 -07:00
2026-04-29 20:59:17 -07:00
2026-09-30 10:03:54 +02:00
2026-09-12 15:54:44 -07:00
2026-09-12 15:54:44 -07:00
2026-03-10 21:11:40 -07:00
2026-03-10 21:11:40 -07:00
2026-09-30 10:03:54 +02:00
2025-11-19 23:10:18 -08:00
2025-11-23 22:52:28 -08:00
2026-03-10 21:11:40 -07:00
2026-03-10 21:11:40 -07:00
2026-03-10 21:11:40 -07:00
2026-04-29 20:59:17 -07:00
2026-05-02 15:08:13 -07:00
2026-05-02 15:08:13 -07:00
…
2026-05-02 15:51:08 -07:00
2026-09-12 15:54:44 -07:00
2026-05-02 15:51:08 -07:00
2026-03-10 21:11:40 -07:00
2026-09-21 22:34:18 -07:00
2026-09-12 15:54:44 -07:00
2026-03-10 21:11:40 -07:00
2026-04-29 20:59:17 -07:00
2026-09-12 15:54:44 -07:00
2026-05-02 16:06:27 -07:00
2026-05-02 16:06:27 -07:00
2026-05-02 16:06:27 -07:00
2026-09-12 15:54:44 -07:00
2026-03-10 21:11:40 -07:00
2025-07-05 12:00:52 -07:00
2026-03-10 21:11:40 -07:00
2025-12-15 11:19:23 -03:00
2025-11-23 22:52:28 -08:00
2025-07-19 12:01:12 -07:00
2025-07-19 12:01:12 -07:00
2026-04-29 20:59:17 -07:00
2026-03-30 22:50:17 -07:00
2026-03-10 21:11:40 -07:00
2026-03-10 21:11:40 -07:00
2026-03-10 19:55:49 -07:00
2026-03-10 21:11:40 -07:00