summaryrefslogtreecommitdiffstats
path: root/release/sysinstall/index.c
diff options
context:
space:
mode:
Diffstat (limited to 'release/sysinstall/index.c')
-rw-r--r--release/sysinstall/index.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/release/sysinstall/index.c b/release/sysinstall/index.c
index ad537fc..79a7d72 100644
--- a/release/sysinstall/index.c
+++ b/release/sysinstall/index.c
@@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
- * $Id: index.c,v 1.31 1996/06/08 07:02:19 jkh Exp $
+ * $Id: index.c,v 1.32 1996/06/08 07:15:48 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -383,9 +383,11 @@ int
pkg_checked(dialogMenuItem *self)
{
PkgNodePtr kp = self->data, plist = (PkgNodePtr)self->aux;
+ int i;
+ i = index_search(plist, kp->name, NULL) ? TRUE : FALSE;
if (kp->type == PACKAGE && plist)
- return index_search(plist, kp->name, NULL) ? TRUE : FALSE;
+ return i || (!RunningAsInit && package_exists(kp->name));
else
return FALSE;
}
@@ -402,12 +404,14 @@ pkg_fire(dialogMenuItem *self)
sp = index_search(plist, kp->name, NULL);
/* Not already selected? */
if (!sp) {
- PkgNodePtr np = (PkgNodePtr)safe_malloc(sizeof(PkgNode));
+ if (!RunningAsInit && !package_exists(kp->name)) {
+ PkgNodePtr np = (PkgNodePtr)safe_malloc(sizeof(PkgNode));
- *np = *kp;
- np->next = plist->kids;
- plist->kids = np;
- msgInfo("Added %s to selection list", kp->name);
+ *np = *kp;
+ np->next = plist->kids;
+ plist->kids = np;
+ msgInfo("Added %s to selection list", kp->name);
+ }
}
else if (sp) {
msgInfo("Removed %s from selection list", kp->name);
OpenPOWER on IntegriCloud