@@ -155,9 +155,9 @@ private function handleLogin(Request $request, $source, array $state): Response
155155 $ errorParams = $ state ['error ' ]['params ' ];
156156 }
157157
158- $ cookies = [];
159158 if ($ organizations === null || $ organization !== '' ) {
160159 if (!empty ($ username ) || !empty ($ password )) {
160+ $ cookies = [];
161161 $ httpUtils = new Utils \HTTP ();
162162 $ sameSiteNone = $ httpUtils ->canSetSamesiteNone () ? Cookie::SAMESITE_NONE : null ;
163163
@@ -221,10 +221,16 @@ private function handleLogin(Request $request, $source, array $state): Response
221221
222222 try {
223223 if ($ source instanceof UserPassOrgBase) {
224- return UserPassOrgBase::handleLogin ($ authStateId , $ username , $ password , $ organization );
224+ $ response = UserPassOrgBase::handleLogin ($ authStateId , $ username , $ password , $ organization );
225225 } else {
226- return UserPassBase::handleLogin ($ authStateId , $ username , $ password );
226+ $ response = UserPassBase::handleLogin ($ authStateId , $ username , $ password );
227227 }
228+
229+ foreach ($ cookies as $ cookie ) {
230+ $ response ->headers ->setCookie ($ cookie );
231+ }
232+
233+ return $ response ;
228234 } catch (Error \Error $ e ) {
229235 // Login failed. Extract error code and parameters, to display the error
230236 $ errorCode = $ e ->getErrorCode ();
@@ -302,10 +308,6 @@ private function handleLogin(Request $request, $source, array $state): Response
302308 $ t ->data ['SPMetadata ' ] = null ;
303309 }
304310
305- foreach ($ cookies as $ cookie ) {
306- $ t ->headers ->setCookie ($ cookie );
307- }
308-
309311 return $ t ;
310312 }
311313
0 commit comments