aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Ward <david.ward@gatech.edu>2010-03-07 10:00:15 -0700
committerDavid Ward <david.ward@gatech.edu>2010-03-07 13:56:24 -0500
commit865123ffda92eeaba487f4e45342e1d8ef18fa6f (patch)
tree2a88766041fa0d413768a9ec7e09446b4cfce985
parent568fb83373361abb8c9f3886fee944a8d9e5f66d (diff)
downloadforums-865123ffda92eeaba487f4e45342e1d8ef18fa6f.tar
forums-865123ffda92eeaba487f4e45342e1d8ef18fa6f.tar.gz
forums-865123ffda92eeaba487f4e45342e1d8ef18fa6f.tar.bz2
forums-865123ffda92eeaba487f4e45342e1d8ef18fa6f.tar.xz
forums-865123ffda92eeaba487f4e45342e1d8ef18fa6f.zip
[bug/58755] Fix a redirection bug that can occur after login
This issue affects any forum (i.e. https://myforum/phpBB3/) where: - the forum is located in a directory underneath the web root (i.e., NOT https://myforum/) - a user accesses the forum with a URI pointing to a directory rather than a script (i.e., NOT https://myforum/phpBB3/index.php) - the URI used ends in a slash (i.e., NOT https://myforum/phpBB3) If these conditions are met, after successful login the user is redirected to an invalid URI (i.e., https://myforum/phpBB3/phpBB3?sid=). This change fixes extract_current_page() to handle the case correctly where the URI ends in a slash and is not the web root. So after successful login, the redirection back to the main page will work (i.e., https://myforum/phpBB3/?sid=)
-rw-r--r--phpBB/includes/session.php2
1 files changed, 1 insertions, 1 deletions
diff --git a/phpBB/includes/session.php b/phpBB/includes/session.php
index 11f1896332..1a302d5991 100644
--- a/phpBB/includes/session.php
+++ b/phpBB/includes/session.php
@@ -83,7 +83,7 @@ class session
$query_string = trim(implode('&', $use_args));
// basenamed page name (for example: index.php)
- $page_name = basename($script_name);
+ $page_name = (substr($script_name, -1, 1) == '/') ? '' : basename($script_name);
$page_name = urlencode(htmlspecialchars($page_name));
// current directory within the phpBB root (for example: adm)