1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-02-24 12:03:21 +01:00

[ticket/11574] Fix more issues in the updater

* Stupid mistake in phpbb_create_update_container
* Do not bootstrap extensions in installer/updater
* Fix template lookup in installer/updater
* Do not attempt to delete posts from bots

The latter is a really fun problem. Since deleting posts now depends
on a new db column that does not exist yet, we cannot call delete_post
from a migration, ever. By using retain, we can hack around the issue
for now.

PHPBB3-11574
This commit is contained in:
Igor Wiedler 2013-07-14 15:40:09 -04:00
parent c2b31ca101
commit 8928240dc3
4 changed files with 12 additions and 20 deletions

View File

@ -148,9 +148,11 @@ function phpbb_create_install_container($phpbb_root_path, $php_ext)
*/
function phpbb_create_update_container($phpbb_root_path, $php_ext, $config_path)
{
$config_file = $phpbb_root_path . 'config.' . $php_ext;
return phpbb_create_compiled_container(
$config_file,
array(
new phpbb_di_extension_config($phpbb_root_path . 'config.' . $php_ext),
new phpbb_di_extension_config($config_file),
new phpbb_di_extension_core($config_path),
),
array(
@ -173,11 +175,6 @@ function phpbb_create_update_container($phpbb_root_path, $php_ext, $config_path)
*/
function phpbb_create_compiled_container($config_file, array $extensions, array $passes, $phpbb_root_path, $php_ext)
{
$installed_exts = phpbb_bootstrap_enabled_exts($config_file, $phpbb_root_path);
// Now pass the enabled extension paths into the ext compiler extension
$extensions[] = new phpbb_di_extension_ext($installed_exts);
// Create the final container to be compiled and cached
$container = phpbb_create_container($extensions, $phpbb_root_path, $php_ext);
@ -258,11 +255,14 @@ function phpbb_create_dumped_container_unless_debug($config_file, array $extensi
function phpbb_create_default_container($phpbb_root_path, $php_ext)
{
$config_file = $phpbb_root_path . 'config.' . $php_ext;
$installed_exts = phpbb_bootstrap_enabled_exts($config_file, $phpbb_root_path);
return phpbb_create_dumped_container_unless_debug(
$config_file,
array(
new phpbb_di_extension_config($config_file),
new phpbb_di_extension_core($phpbb_root_path . 'config'),
new phpbb_di_extension_ext($installed_exts),
),
array(
new phpbb_di_pass_collection_pass(),

View File

@ -249,7 +249,11 @@ $phpbb_style_path_provider = new phpbb_style_path_provider();
$template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context());
$phpbb_style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $phpbb_style_resource_locator, $phpbb_style_path_provider, $template);
$phpbb_style->set_ext_dir_prefix('adm/');
$phpbb_style->set_custom_style('admin', $phpbb_admin_path . 'style', array(), '');
$paths = array($phpbb_admin_path . 'style', $phpbb_root_path . 'install/update/new/adm/style');
$paths = array_filter($paths, 'is_dir');
$phpbb_style->set_custom_style('admin', $paths, array(), '');
$template->assign_var('T_ASSETS_PATH', '../assets');
$template->assign_var('T_TEMPLATE_PATH', $phpbb_admin_path . 'style');

View File

@ -222,12 +222,6 @@ class install_update extends module
if ($this->test_update === false)
{
// Got the updater template itself updated? If so, we are able to directly use it - but only if all three files are present
if (in_array($phpbb_adm_relative_path . 'style/install_update.html', $this->update_info['files']))
{
$this->tpl_name = '../../install/update/new/adm/style/install_update';
}
// What about the language file? Got it updated?
if (in_array('language/en/install.' . $phpEx, $this->update_info['files']))
{
@ -1068,12 +1062,6 @@ class install_update extends module
$this->tpl_name = 'install_update_diff';
// Got the diff template itself updated? If so, we are able to directly use it
if (in_array($phpbb_adm_relative_path . 'style/install_update_diff.html', $this->update_info['files']))
{
$this->tpl_name = '../../install/update/new/adm/style/install_update_diff';
}
$this->page_title = 'VIEWING_FILE_DIFF';
$status = request_var('status', '');

View File

@ -108,7 +108,7 @@ class phpbb_db_migration_data_30x_3_0_12_rc1 extends phpbb_db_migration
WHERE user_id = $bot_user_id";
$this->sql_query($sql);
user_delete('remove', $bot_user_id);
user_delete('retain', $bot_user_id);
}
else
{