From de98905c127b3dfa4d4e5fd4c5dd3b4c05f5ed85 Mon Sep 17 00:00:00 2001 From: flyskyko Date: Thu, 20 Sep 2012 09:12:26 +0000 Subject: [PATCH] issue 905, fixed a bug that does not logout when different domain between create autologin cookie and logout git-svn-id: http://xe-core.googlecode.com/svn/branches/luminous@11401 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- modules/member/member.controller.php | 13 +++++++++---- modules/member/queries/deleteAutologin.xml | 3 ++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index a52576b34..364c04ec9 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -2047,6 +2047,10 @@ **/ function destroySessionInfo() { if(!$_SESSION || !is_array($_SESSION)) return; + + $memberInfo = Context::get('logged_info'); + $memberSrl = $memberInfo->member_srl; + foreach($_SESSION as $key => $val) { $_SESSION[$key] = ''; } @@ -2054,10 +2058,11 @@ setcookie(session_name(), '', time()-42000, '/'); setcookie('sso','',time()-42000, '/'); - if($_COOKIE['xeak']) { - $args->autologin_key = $_COOKIE['xeak']; - executeQuery('member.deleteAutologin', $args); - } + if($memberSrl) + { + $args->member_srl = $memberSrl; + $output = executeQuery('member.deleteAutologin', $args); + } } function _updatePointByGroup($memberSrl, $groupSrlList) diff --git a/modules/member/queries/deleteAutologin.xml b/modules/member/queries/deleteAutologin.xml index 5919a4058..a26672edc 100644 --- a/modules/member/queries/deleteAutologin.xml +++ b/modules/member/queries/deleteAutologin.xml @@ -3,6 +3,7 @@ - + +