Permalink
Browse files

Explicitly globalize $table_prefix in wp-settings.php in case WordPre…

…ss isn't loaded in global scope. Use $_SERVER['PHP_SELF'], not $PHP_SELF. We need to keep $PHP_SELF for backwards compatibility reasons (many, many plugins rely on it). props mrtorrent, fixes #17749.

git-svn-id: http://svn.automattic.com/wordpress/trunk@18993 1a063a9b-81f0-0310-95a4-ce76da25c4cd
  • Loading branch information...
1 parent 1387dfd commit 97f9966f3acddbd50f58cca05f6a1fbea626e952 nacin committed Oct 18, 2011
Showing with 5 additions and 4 deletions.
  1. +4 −4 wp-includes/vars.php
  2. +1 −0 wp-settings.php
View
@@ -16,11 +16,11 @@
if ( is_admin() ) {
// wp-admin pages are checked more carefully
if ( is_network_admin() )
- preg_match('#/wp-admin/network/?(.*?)$#i', $PHP_SELF, $self_matches);
+ preg_match('#/wp-admin/network/?(.*?)$#i', $_SERVER['PHP_SELF'], $self_matches);
elseif ( is_user_admin() )
- preg_match('#/wp-admin/user/?(.*?)$#i', $PHP_SELF, $self_matches);
+ preg_match('#/wp-admin/user/?(.*?)$#i', $_SERVER['PHP_SELF'], $self_matches);
else
- preg_match('#/wp-admin/?(.*?)$#i', $PHP_SELF, $self_matches);
+ preg_match('#/wp-admin/?(.*?)$#i', $_SERVER['PHP_SELF'], $self_matches);
$pagenow = $self_matches[1];
$pagenow = trim($pagenow, '/');
$pagenow = preg_replace('#\?.*?$#', '', $pagenow);
@@ -33,7 +33,7 @@
$pagenow .= '.php'; // for Options +Multiviews: /wp-admin/themes/index.php (themes.php is queried)
}
} else {
- if ( preg_match('#([^/]+\.php)([?/].*?)?$#i', $PHP_SELF, $self_matches) )
+ if ( preg_match('#([^/]+\.php)([?/].*?)?$#i', $_SERVER['PHP_SELF'], $self_matches) )
$pagenow = strtolower($self_matches[1]);
else
$pagenow = 'index.php';
View
@@ -75,6 +75,7 @@
require_wp_db();
// Set the database table prefix and the format specifiers for database table columns.
+$GLOBALS['table_prefix'] = $table_prefix;
wp_set_wpdb_vars();
// Start the WordPress object cache, or an external object cache if the drop-in is present.

0 comments on commit 97f9966

Please sign in to comment.