if (!defined('__SECURITY')) {
$INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
require($INC);
-}
+} // END - if
// Init variables
EXT_INIT_CSS_FILES();
$EXT_DUMMY['ext_deprecated'][$name] = 'N';
// Mark it as active extension
- $GLOBALS['cache_array']['active_extensions']['$name'] = $EXT_DUMMY['ext_keep'][$k];
+ $GLOBALS['cache_array']['active_extensions'][$name] = $EXT_DUMMY['ext_keep'][$k];
unset($EXT_DUMMY['ext_keep'][$k]);
// Remove unneccessary data from memory
LOAD_EXTENSION($ext);
} // END - foreach
- // Init filter system
- initFilterSystem();
-
// Load more cache files (like admins)
loadIncludeOnce('inc/load_cache.php');
}
} // END - while
- // Init filter system
- initFilterSystem();
-
if ($GLOBALS['cache_mode'] == 'init') {
// Close cache file
$GLOBALS['cache_instance']->finalize();
// Load more cache files (like admins)
loadIncludeOnce('inc/load_cache.php');
- } // END - if
+ } else {
+ // Init filter system for non-init mode
+ initFilterSystem();
+ }
// Free memory
SQL_FREERESULT($res_ext_crt);
-} elseif (!EXT_IS_ACTIVE('cache')) {
+} elseif ((!EXT_IS_ACTIVE('cache')) || (($GLOBALS['cache_mode'] == 'init') && (getOutputMode() != 0))) {
// Init filter system even when there are no extensions installed. #16
initFilterSystem();
+} elseif ($GLOBALS['cache_mode'] != 'load') {
+ // Something unexpected!
+ debug_report_bug('Unexpected state in '.basename(__FILE__).': cache_mode='.$GLOBALS['cache_mode'].', numRows='.SQL_NUMROWS($res_ext_crt));
}
// Run the filter
foreach ($DEL as $del_ext) {
// First remove entry from extensions table
SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_extensions` WHERE `ext_name`='%s' LIMIT 1",
- array($del_ext), __FILE__, __LINE__);
+ array($del_ext), __FILE__, __LINE__);
// Remove (maybe?) found tasks (main task and possible updates
- SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_task_system` WHERE subject='[%s:]' AND (task_type='EXTENSION' OR task_type='EXTENSION_UPDATE')",
- array($del_ext), __FILE__, __LINE__);
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_task_system` WHERE `subject`='[%s:]' AND (`task_type`='EXTENSION' OR `task_type`='EXTENSION_UPDATE')",
+ array($del_ext), __FILE__, __LINE__);
} // END - foreach
// I think it's not neccessary to run the optimization function here