From a9f4af7420d3fbea7aad9077d852ec6f3ef4429c Mon Sep 17 00:00:00 2001 From: nwhitehorn Date: Sat, 19 Feb 2011 14:49:49 +0000 Subject: The PC98 gpart module supports labels now. --- usr.sbin/bsdinstall/partedit/gpart_ops.c | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) (limited to 'usr.sbin') diff --git a/usr.sbin/bsdinstall/partedit/gpart_ops.c b/usr.sbin/bsdinstall/partedit/gpart_ops.c index f6fcc08..9626bf0 100644 --- a/usr.sbin/bsdinstall/partedit/gpart_ops.c +++ b/usr.sbin/bsdinstall/partedit/gpart_ops.c @@ -65,6 +65,19 @@ gpart_show_error(const char *title, const char *explanation, const char *errstr) dialog_msgbox(title, message, 0, 0, TRUE); } +static int +scheme_supports_labels(const char *scheme) +{ + if (strcmp(scheme, "APM") == 0) + return (1); + if (strcmp(scheme, "GPT") == 0) + return (1); + if (strcmp(scheme, "PC98") == 0) + return (1); + + return (0); +} + int gpart_partition(const char *lg_name, const char *scheme) { @@ -389,11 +402,7 @@ gpart_edit(struct gprovider *pp) } } - /* Labels only supported on GPT and APM */ - if (strcmp(scheme, "GPT") == 0 || strcmp(scheme, "APM") == 0) - nitems = 4; - else - nitems = 3; + nitems = scheme_supports_labels(scheme) ? 4 : 3; /* Edit editable parameters of a partition */ hadlabel = 0; @@ -738,11 +747,7 @@ gpart_create(struct gprovider *pp, char *default_type, char *default_size, if (strcmp(scheme, "MBR") == 0 || strcmp(scheme, "PC98") == 0) items[0].text = "freebsd"; - /* Labels only supported on GPT and APM */ - if (strcmp(scheme, "GPT") == 0 || strcmp(scheme, "APM") == 0) - nitems = 4; - else - nitems = 3; + nitems = scheme_supports_labels(scheme) ? 4 : 3; if (default_type != NULL) items[0].text = default_type; -- cgit v1.1