Fix double free issue when attributes are resolved.
[shibboleth/cpp-sp-resolver.git] / src / shibresolver / resolver.cpp
index dd7bbbf..5648c43 100644 (file)
@@ -517,8 +517,10 @@ void RemotedResolver::resolve(
                     )
                 );
             resolver->resolveAttributes(*ctx.get());
-            if (!ctx->getResolvedAttributes().empty())
+            if (!ctx->getResolvedAttributes().empty()) {
                 resolvedAttrs.insert(resolvedAttrs.end(), ctx->getResolvedAttributes().begin(), ctx->getResolvedAttributes().end());
+                ctx->getResolvedAttributes().clear();
+            }
         }
     }
     catch (exception& ex) {