summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorRenato Botelho <renato@netgate.com>2015-07-01 10:18:28 -0300
committerRenato Botelho <renato@netgate.com>2015-07-01 10:18:28 -0300
commit0d579b5985accc4cee674f2d079e6e0a73772cf7 (patch)
tree68106864ed93a31579baa7e0a8c5b39a534b9dfe /etc
parent65c94077e4a9889ac6ba9035fed54c7b2d16fd5b (diff)
downloadpfsense-0d579b5985accc4cee674f2d079e6e0a73772cf7.zip
pfsense-0d579b5985accc4cee674f2d079e6e0a73772cf7.tar.gz
Only try to remove pkg if it's installed, otherwise just cleanup xml part
Diffstat (limited to 'etc')
-rw-r--r--etc/inc/pkg-utils.inc7
1 files changed, 6 insertions, 1 deletions
diff --git a/etc/inc/pkg-utils.inc b/etc/inc/pkg-utils.inc
index b6ec8d0..e37c286 100644
--- a/etc/inc/pkg-utils.inc
+++ b/etc/inc/pkg-utils.inc
@@ -381,15 +381,20 @@ function resync_all_package_configs($show_message = false) {
function uninstall_package($package_name) {
global $config, $static_output;
+ $internal_name = $package_name;
$id = get_package_id($package_name);
if ($id >= 0) {
$internal_name = get_package_internal_name($config['installedpackages']['package'][$id]);
stop_service($internal_name);
+ }
+
+ if (is_pkg_installed($internal_name)) {
$static_output .= "Removing package...\n";
update_output_window($static_output);
pkg_delete($internal_name);
+ } else {
+ delete_package_xml($package_name);
}
- delete_package_xml($package_name);
$static_output .= gettext("done.") . "\n";
update_output_window($static_output);
OpenPOWER on IntegriCloud