Skip to content

Restore safe SoNodeKitPath object semantics - #747

Open
Dikluwe wants to merge 4 commits into
coin3d:masterfrom
Dikluwe:fix/sonodekitpath-object-model-safety
Open

Dikluwe wants to merge 4 commits into
coin3d:masterfrom
Dikluwe:fix/sonodekitpath-object-model-safety

Conversation

@Dikluwe

@Dikluwe Dikluwe commented Sep 16, 2026

Copy link
Copy Markdown
Contributor

Summary

  • construct genuine SoNodeKitPath objects instead of exposing SoPath storage through a derived pointer
  • add SoNodeKitPath::fromPath() as an explicit copying boundary
  • preserve nodekit projection, mutation, comparison, fork, and I/O behavior
  • remove unsafe manipulator casts

Tests

  • registered SoNodeKitPathBehavior CTest covers materialization, independent ownership, projected accessors, append through hidden nodes, and factory dynamic type
  • strict-warning Debug build and the focused CTest pass

Compatibility

The inheritance and object layout are preserved. The API additions are fromPath() and operator!=.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant