aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/session.php
diff options
context:
space:
mode:
authorCullen Walsh <brainy@phpbb.com>2010-01-25 18:19:18 +0000
committerCullen Walsh <brainy@phpbb.com>2010-01-25 18:19:18 +0000
commitfe98d43bb5c74d9939a60a2b7c9202b19b410d21 (patch)
treeacd5dc98e0feb8403bd256bb2c71d28cb8a200d9 /phpBB/includes/session.php
parent4eda4855efa2392226f9267b25094402886a64d2 (diff)
downloadforums-fe98d43bb5c74d9939a60a2b7c9202b19b410d21.tar
forums-fe98d43bb5c74d9939a60a2b7c9202b19b410d21.tar.gz
forums-fe98d43bb5c74d9939a60a2b7c9202b19b410d21.tar.bz2
forums-fe98d43bb5c74d9939a60a2b7c9202b19b410d21.tar.xz
forums-fe98d43bb5c74d9939a60a2b7c9202b19b410d21.zip
[Fix] Don't send activation email when user tries to change email without permission (fix by nrohler). (Bug #56335)
Authorised by: naderman git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10443 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes/session.php')
-rw-r--r--phpBB/includes/session.php13
1 files changed, 8 insertions, 5 deletions
diff --git a/phpBB/includes/session.php b/phpBB/includes/session.php
index 933bd47347..11f1896332 100644
--- a/phpBB/includes/session.php
+++ b/phpBB/includes/session.php
@@ -1361,7 +1361,7 @@ class session
WHERE user_id = ' . (int) $user_id;
$db->sql_query($sql);
- // Update last visit info first before deleting sessions
+ // If the user is logged in, update last visit info first before deleting sessions
$sql = 'SELECT session_time, session_page
FROM ' . SESSIONS_TABLE . '
WHERE session_user_id = ' . (int) $user_id . '
@@ -1370,10 +1370,13 @@ class session
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
- $sql = 'UPDATE ' . USERS_TABLE . '
- SET user_lastvisit = ' . (int) $row['session_time'] . ", user_lastpage = '" . $db->sql_escape($row['session_page']) . "'
- WHERE user_id = " . (int) $user_id;
- $db->sql_query($sql);
+ if ($row)
+ {
+ $sql = 'UPDATE ' . USERS_TABLE . '
+ SET user_lastvisit = ' . (int) $row['session_time'] . ", user_lastpage = '" . $db->sql_escape($row['session_page']) . "'
+ WHERE user_id = " . (int) $user_id;
+ $db->sql_query($sql);
+ }
// Let's also clear any current sessions for the specified user_id
// If it's the current user then we'll leave this session intact