aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB
diff options
context:
space:
mode:
authorNathan Guse <nathaniel.guse@gmail.com>2013-07-13 14:09:38 -0700
committerNathan Guse <nathaniel.guse@gmail.com>2013-07-13 14:09:38 -0700
commit47a611ab4ff90ae2399d3ddbc374147a8d4958b2 (patch)
treee0d8eacd880be706eb393f769e965b29d03398b0 /phpBB
parent2aa58ee3b8b727ba774db001998fbbc012e5bba6 (diff)
parent9f5ee08bae0bd13352dd7a5e59ec959bc17702d4 (diff)
downloadforums-47a611ab4ff90ae2399d3ddbc374147a8d4958b2.tar
forums-47a611ab4ff90ae2399d3ddbc374147a8d4958b2.tar.gz
forums-47a611ab4ff90ae2399d3ddbc374147a8d4958b2.tar.bz2
forums-47a611ab4ff90ae2399d3ddbc374147a8d4958b2.tar.xz
forums-47a611ab4ff90ae2399d3ddbc374147a8d4958b2.zip
Merge pull request #1553 from naderman/ticket/11690
[ticket/11690] Old module class names may get autoloaded by class_exists
Diffstat (limited to 'phpBB')
-rw-r--r--phpBB/includes/acp/acp_modules.php17
1 files changed, 12 insertions, 5 deletions
diff --git a/phpBB/includes/acp/acp_modules.php b/phpBB/includes/acp/acp_modules.php
index ab416fb406..a1e681b29c 100644
--- a/phpBB/includes/acp/acp_modules.php
+++ b/phpBB/includes/acp/acp_modules.php
@@ -575,13 +575,20 @@ class acp_modules
// format. phpbb_acp_info_acp_foo needs to be turned into
// acp_foo_info and the respective file has to be included
// manually because it does not support auto loading
- if (!class_exists($info_class))
+ $old_info_class_file = str_replace("phpbb_{$module_class}_info_", '', $cur_module);
+ $old_info_class = $old_info_class_file . '_info';
+
+ if (class_exists($old_info_class))
+ {
+ $info_class = $old_info_class;
+ }
+ else if (!class_exists($info_class))
{
- $info_class_file = str_replace("phpbb_{$module_class}_info_", '', $cur_module);
- $info_class = $info_class_file . '_info';
- if (!class_exists($info_class) && file_exists($directory . $info_class_file . '.' . $phpEx))
+ $info_class = $old_info_class;
+ // need to check class exists again because previous checks triggered autoloading
+ if (!class_exists($info_class) && file_exists($directory . $old_info_class_file . '.' . $phpEx))
{
- include($directory . $info_class_file . '.' . $phpEx);
+ include($directory . $old_info_class_file . '.' . $phpEx);
}
}