AntiPattern

Double-Free Ownership Mismatch

double-free-ownership-mismatch

Caller-owned pointers get freed inside callee error/cleanup paths, so later fail-handlers or caller destructors free the same memory again; additionally, related logic sometimes uses variables set only in the fast path unconditionally, amplifying crashes.