summaryrefslogtreecommitdiffstats
path: root/installer/OpenSLX/OSSetup/Engine.pm
diff options
context:
space:
mode:
authorOliver Tappe2008-05-26 19:59:58 +0200
committerOliver Tappe2008-05-26 19:59:58 +0200
commit350389530030ecf6c6145179a3c4c06d1e17d044 (patch)
tree551b9b6571aea2d62195ccd15fd3c3455a40a9ed /installer/OpenSLX/OSSetup/Engine.pm
parent* fixed bug that would not allow setting an empty attribute to '0' (diff)
downloadcore-350389530030ecf6c6145179a3c4c06d1e17d044.tar.gz
core-350389530030ecf6c6145179a3c4c06d1e17d044.tar.xz
core-350389530030ecf6c6145179a3c4c06d1e17d044.zip
Fixed non-working installation & deinstallation of plugins into/from the '<<<default>>>'-vendorOS:
* OSPlugin::Engine was trying to create an OSSetup::Engine for the default-vendorOS, which does not work. Now such the OSSetup::Engine is initialized lazily (i.e. when it is being used) * fixed a bug in OSSetup::Engine that caused it to think that it was installing plugins afresh when in fact it they were reinstalled git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@1802 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'installer/OpenSLX/OSSetup/Engine.pm')
-rw-r--r--installer/OpenSLX/OSSetup/Engine.pm14
1 files changed, 7 insertions, 7 deletions
diff --git a/installer/OpenSLX/OSSetup/Engine.pm b/installer/OpenSLX/OSSetup/Engine.pm
index 378d572e..86b262d8 100644
--- a/installer/OpenSLX/OSSetup/Engine.pm
+++ b/installer/OpenSLX/OSSetup/Engine.pm
@@ -535,7 +535,7 @@ sub addInstalledVendorOSToConfigDB
)
);
}
- # re-install plugins of this vendor-OS
+ # fetch installed plugins of this vendor-OS in order to reinstall them
@plugins = $openslxDB->fetchInstalledPlugins($vendorOS->{id});
}
else {
@@ -552,14 +552,15 @@ sub addInstalledVendorOSToConfigDB
$vendorOSName, $id
)
);
- # install plugins from default vendor-OS into this new one
+ # fetch plugins from default vendor-OS in order to install those into
+ # this new one
@plugins = $openslxDB->fetchInstalledPlugins(0);
}
$openslxDB->disconnect();
# now that we have the list of plugins, we (re-)install all of them:
- $self->_installPlugins(\@plugins);
+ $self->_installPlugins(\@plugins, defined $vendorOS);
return;
}
@@ -1675,10 +1676,9 @@ sub _clone_determineIncludeExcludeList
sub _installPlugins
{
- my $self = shift;
- my $plugins = shift;
-
- my $isReInstall = 0;
+ my $self = shift;
+ my $plugins = shift;
+ my $isReInstall = shift;
if (!$plugins) {
$plugins = [];