Bug 31244: [21.11.x] Fix 500 if logout and not logged in

Can't use an undefined value as a HASH reference at /kohadevbox/koha/C4/Auth.pm line 985
        C4::Auth::checkauth('CGI=HASH(0x5603b7dc4300)', 0, 'HASH(0x5603b2633238)', 'intranet', undef, 'intranet-main.tt') called at /kohadevbox/koha/C4/Auth.pm line 186
        C4::Auth::get_template_and_user('HASH(0x5603b7b83d08)') called at /kohadevbox/koha/mainpage.pl line 40

Test plan:
Open a private window
Hit /cgi-bin/koha/mainpage.pl?logout.x=1

Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Rebased for 21.11.x
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This commit is contained in:
Jonathan Druart 2022-07-26 14:55:02 +02:00 committed by Arthur Suzuki
parent c0fa919492
commit e825b301e3
No known key found for this signature in database
GPG Key ID: 7558BEE2BEEEBCAA
2 changed files with 2 additions and 1 deletions

View File

@ -912,7 +912,7 @@ sub checkauth {
# voluntary logout the user
# check wether the user was using their shibboleth session or a local one
my $shibSuccess = C4::Context->userenv->{'shibboleth'};
my $shibSuccess = C4::Context->userenv ? C4::Context->userenv->{'shibboleth'} : undef;
$session->delete();
$session->flush;
$cookie = $cookie_mgr->clear_unless( $query->cookie, @$cookie );

View File

@ -54,6 +54,7 @@ sub logout_shib {
my $uri = _get_uri();
my $return = _get_return($query);
print $query->redirect( $uri . "/Shibboleth.sso/Logout?return=$return" );
exit;
}
# Returns Shibboleth login URL with callback to the requesting URL