summaryrefslogtreecommitdiffstats
path: root/usr.sbin/sysinstall/index.c
diff options
context:
space:
mode:
authorjkh <jkh@FreeBSD.org>1995-10-15 17:22:24 +0000
committerjkh <jkh@FreeBSD.org>1995-10-15 17:22:24 +0000
commitd2a0962cf22d43eb2818ef52df1ab64cf514890f (patch)
tree8c0d1b7f5bd52723f619232bfd679f7b2863a313 /usr.sbin/sysinstall/index.c
parentd63873130a8c88ad4f48fdc78d1ee911b9b407f9 (diff)
downloadFreeBSD-src-d2a0962cf22d43eb2818ef52df1ab64cf514890f.zip
FreeBSD-src-d2a0962cf22d43eb2818ef52df1ab64cf514890f.tar.gz
Fix the selection routine.
Diffstat (limited to 'usr.sbin/sysinstall/index.c')
-rw-r--r--usr.sbin/sysinstall/index.c28
1 files changed, 16 insertions, 12 deletions
diff --git a/usr.sbin/sysinstall/index.c b/usr.sbin/sysinstall/index.c
index ba41541..8ba59a4 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: install.c,v 1.71.2.31 1995/10/15 04:37:05 jkh Exp $
+ * $Id: index.c,v 1.6 1995/10/15 12:41:00 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -190,7 +190,7 @@ index_register(PkgNodePtr top, char *where, IndexEntryPtr ptr)
top->kids = q;
}
p = new_pkg_node(ptr->name, PACKAGE);
- p->desc = clip(ptr->comment, 54 - (strlen(ptr->name) / 2));
+ p->desc = clip(ptr->comment, 52 - (strlen(ptr->name) / 2));
p->data = ptr;
p->next = q->kids;
q->kids = p;
@@ -438,20 +438,24 @@ index_search(PkgNodePtr top, char *str, PkgNodePtr *tp)
static Boolean
is_selected_in(char *name, char *result)
{
- while (result) {
+ Boolean ret = FALSE;
+
+ while (*result) {
char *cp;
cp = index(result, '\n');
- if (cp)
- *cp++ = 0;
- /* Were no options actually selected? */
- if (!*result)
- return FALSE;
- if (!strcmp(result, name))
- return TRUE;
- result = cp;
+ if (!cp) {
+ ret = !strcmp(name, result);
+ break;
+ }
+ else {
+ ret = !strncmp(name, result, cp - result);
+ if (ret)
+ break;
+ }
+ result = cp + 1;
}
- return FALSE;
+ return ret;
}
int
OpenPOWER on IntegriCloud