Correct excessive looping for type 2.
authorScott Cantor <cantor.2@osu.edu>
Fri, 29 Dec 2006 19:57:02 +0000 (19:57 +0000)
committerScott Cantor <cantor.2@osu.edu>
Fri, 29 Dec 2006 19:57:02 +0000 (19:57 +0000)
shib-target/ArtifactMapper.cpp

index 6f3f22f..da34742 100644 (file)
@@ -124,7 +124,7 @@ SAMLResponse* STArtifactMapper::resolve(SAMLRequest* request)
                    ShibHTTPHook::ShibHTTPHookCallContext callCtx(credUse,idp);
                 const IEndpointManager* mgr=idp->getArtifactResolutionServiceManager();
                 Iterator<const IEndpoint*> eps=mgr ? mgr->getEndpoints() : EMPTY(const IEndpoint*);
-                while (eps.hasNext()) {
+                while (!response && eps.hasNext()) {
                     const IEndpoint* ep=eps.next();
                     auto_ptr_char loc(ep->getLocation());
                     if (strcmp(loc.get(),type2->getSourceLocation()))