summaryrefslogtreecommitdiff
path: root/usr.sbin/sysinstall/index.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/sysinstall/index.c')
-rw-r--r--usr.sbin/sysinstall/index.c25
1 files changed, 8 insertions, 17 deletions
diff --git a/usr.sbin/sysinstall/index.c b/usr.sbin/sysinstall/index.c
index 736e2575e585..0e2c20ff00ef 100644
--- a/usr.sbin/sysinstall/index.c
+++ b/usr.sbin/sysinstall/index.c
@@ -239,23 +239,6 @@ index_parse(FILE *fp, char *name, char *pathto, char *prefix, char *comment, cha
}
int
-index_get(char *fname, PkgNodePtr papa)
-{
- int i;
- FILE *fp;
-
- fp = fopen(fname, "r");
- if (!fp) {
- fprintf(stderr, "Unable to open index file `%s' for reading.\n", fname);
- i = -1;
- }
- else
- i = index_read(fp, papa);
- fclose(fp);
- return i;
-}
-
-int
index_read(FILE *fp, PkgNodePtr papa)
{
char name[127], pathto[255], prefix[255], comment[255], descr[127], maint[127], cats[511], deps[511];
@@ -429,6 +412,14 @@ pkg_fire(dialogMenuItem *self)
plist->kids = np;
msgInfo("Added %s to selection list", kp->name);
}
+ else {
+ WINDOW *save = savescr();
+
+ if (!msgYesNo("Do you really want to delete %s from the system?", kp->name))
+ if (vsystem("pkg_delete %s %s", isDebug() ? "-v" : "", kp->name))
+ msgConfirm("Warning: pkg_delete of %s failed.\n Check debug output for details.", kp->name);
+ restorescr(save);
+ }
}
else {
msgInfo("Removed %s from selection list", kp->name);