| Previous | Next |
| MILEFFECTSERR_EFFECTINMORETHANONEGRAPH | MILEFFECTSERR_EFFECTHASNOCHILDREN |
MILEFFECTSERR_EFFECTALREADYINAGRAPH
The scope of MILEFFECTSERR_EFFECTALREADYINAGRAPH is MIL effect graph ownership and membership. The caller attempted to add an effect that is already attached to a graph. Keep 0x88980616 beside the returning method because a wrapper can replace this distinction with a generic subsystem message.
Keep neighboring failures separate
EFFECTINMORETHANONEGRAPH identifies conflicting graph owners; this can occur while rebuilding one graph twice. Do not catch the HRESULT and continue rendering with a partially connected graph; later failures can obscure the invariant that was first violated.
What the status establishes
An effect instance has identity and graph ownership. Group membership, insertion, and reuse are not value-copy operations: adding the same live node twice or attaching it to another graph changes ownership semantics even if the effect parameters are identical. Reconstruct the graph by object identity, not by display names or serialized settings.
Duplicate insertion and graph ownership bookkeeping.
Evidence to preserve
- Effect instance and owning graph or group identity
- Connector, input, child, listener, property, or transform involved
- Calculated input and output bounds
- Construction sequence and first method returning the HRESULT
Reduce the scenario safely
Create fresh effect instances for each graph and log every add, remove, group, and dispose operation. Then test deliberate duplicate insertion as a negative control so cleanup code cannot silently mask ownership mistakes.
- Check membership before insertion and treat graph construction as idempotent.
- Rebuild the smallest graph containing only the implicated node and one known input.
- Log ownership changes and graph generation numbers.
- Validate the graph before allocating large intermediate resources.
Technical references
Looking for a different code? Search another status or error code.
