From 5eda5816d8a7bd05730c70e44493815079925b48 Mon Sep 17 00:00:00 2001 From: NewEraCracker Date: Fri, 12 Aug 2016 15:55:23 +0100 Subject: Protect package_reinstall_all() If one restores a config.xml without packages, there will be a warning about invalid argument supplied for foreach(). This commit fixes the problem. --- src/etc/inc/pkg-utils.inc | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/etc/inc/pkg-utils.inc b/src/etc/inc/pkg-utils.inc index ac4e18f..4699f68 100644 --- a/src/etc/inc/pkg-utils.inc +++ b/src/etc/inc/pkg-utils.inc @@ -998,6 +998,9 @@ function package_reinstall_all() { FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); unlink_if_exists("{$g['cf_conf_path']}/packages_to_reinstall_after_upgrade.txt"); } else { + if (!isset($config['installedpackages']['package']) || !is_array($config['installedpackages']['package'])) { + return true; + } $package_list = array(); foreach ($config['installedpackages']['package'] as $package) { $package_list[] = get_package_internal_name($package); -- cgit v1.1