diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/install.inc | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/includes/install.inc b/includes/install.inc index 6f8a86f65..472cc9407 100644 --- a/includes/install.inc +++ b/includes/install.inc @@ -27,13 +27,16 @@ foreach (module_list() as $module) { * FALSE. */ function drupal_get_schema_versions($module) { - if (!($max = module_invoke($module, 'version', SCHEMA))) { - return FALSE; + $functions = get_defined_functions(); + foreach ($functions['user'] as $function) { + if (strpos($function, $module .'_update') === 0) { + $updates[] = (int) substr($function, strlen($module .'_update_')); + } } - if (!($min = module_invoke($module, 'version', SCHEMA_MIN))) { - $min = 1; + if (count($updates) == 0) { + return FALSE; } - return range($min, $max); + return $updates; } /** |