diff options
author | jkh <jkh@FreeBSD.org> | 1996-06-08 08:01:52 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1996-06-08 08:01:52 +0000 |
commit | 4faf24f33e1ea5ab44e5804d20fecc5b3beb0a71 (patch) | |
tree | 7ea92166828acff9270784a01b0651a0a884717f /usr.sbin/sysinstall/index.c | |
parent | 88fea1c3af7f34d83d24cfa5e8f36b317b77d5bf (diff) | |
download | FreeBSD-src-4faf24f33e1ea5ab44e5804d20fecc5b3beb0a71.zip FreeBSD-src-4faf24f33e1ea5ab44e5804d20fecc5b3beb0a71.tar.gz |
Put back some changes I inadvertantly spammed with a cvs update.
Diffstat (limited to 'usr.sbin/sysinstall/index.c')
-rw-r--r-- | usr.sbin/sysinstall/index.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/usr.sbin/sysinstall/index.c b/usr.sbin/sysinstall/index.c index ad537fc..79a7d72 100644 --- a/usr.sbin/sysinstall/index.c +++ b/usr.sbin/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); |