The resolution context frees resolved attributes when destroyed. Take ownership of attributes we return to the caller.
)
);
resolver->resolveAttributes(*ctx.get());
- if (!ctx->getResolvedAttributes().empty())
- resolvedAttrs.insert(resolvedAttrs.end(), ctx->getResolvedAttributes().begin(), ctx->getResolvedAttributes().end());
+ if (!ctx->getResolvedAttributes().empty()) {
+ resolvedAttrs.insert(resolvedAttrs.end(), ctx->getResolvedAttributes().begin(), ctx->getResolvedAttributes().end());
+ ctx->getResolvedAttributes().clear();
+ }
}
}
catch (exception& ex) {