mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 14:18:52 +00:00
[ticket/13733] Properly handle nonexistent classes as well
PHPBB3-13733
This commit is contained in:
parent
9e6f9c8a64
commit
4ecc13af83
1 changed files with 14 additions and 4 deletions
|
@ -139,11 +139,21 @@ class base implements \phpbb\extension\extension_interface
|
||||||
|
|
||||||
foreach ($migrations as $key => $migration)
|
foreach ($migrations as $key => $migration)
|
||||||
{
|
{
|
||||||
// If the class doesn't exist OR the class does not extend the migration class
|
// If the class exists and is a subclass of the
|
||||||
// we need to skip it.
|
// \phpbb\db\migration\migration abstract class
|
||||||
if (!class_exists($migration) || ($reflector = new \ReflectionClass($migration) && !$reflector->isSubclassOf('\phpbb\db\migration\migration'))) {
|
// we skip it.
|
||||||
unset($migrations[$key]);
|
|
||||||
|
// Otherwise, i.e. if it doesn't exist or it is
|
||||||
|
// not an extend the abstract class, we unset it
|
||||||
|
if (class_exists($migration)) {
|
||||||
|
$reflector = new \ReflectionClass($migration);
|
||||||
|
if ($reflector->isSubclassOf('\phpbb\db\migration\migration')) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unset($migrations[$key]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $migrations;
|
return $migrations;
|
||||||
|
|
Loading…
Add table
Reference in a new issue