diff options
author | Francesco Cosoleto | 2011-12-15 20:02:39 +0100 |
---|---|---|
committer | Karel Zak | 2011-12-16 14:04:00 +0100 |
commit | 883c5f715833b32137eac78f63b3517e9d1bda17 (patch) | |
tree | abf5ce05952ebe34ecf4b73325547f67c7dea563 /fdisk | |
parent | fdisk: remove possibly_osf_label variable that is only assigned (diff) | |
download | kernel-qcow2-util-linux-883c5f715833b32137eac78f63b3517e9d1bda17.tar.gz kernel-qcow2-util-linux-883c5f715833b32137eac78f63b3517e9d1bda17.tar.xz kernel-qcow2-util-linux-883c5f715833b32137eac78f63b3517e9d1bda17.zip |
fdisk: move code for renaming SGI bootfile to SGI module
This moves the code for renaming SGI bootfile from command_prompt() to
sgi_set_bootfilename() function.
Signed-off-by: Francesco Cosoleto <cosoleto@gmail.com>
Diffstat (limited to 'fdisk')
-rw-r--r-- | fdisk/fdisk.c | 12 | ||||
-rw-r--r-- | fdisk/fdisksgilabel.c | 21 | ||||
-rw-r--r-- | fdisk/fdisksgilabel.h | 3 |
3 files changed, 15 insertions, 21 deletions
diff --git a/fdisk/fdisk.c b/fdisk/fdisk.c index a23f45ee9..1a4c823ae 100644 --- a/fdisk/fdisk.c +++ b/fdisk/fdisk.c @@ -2906,15 +2906,9 @@ static void command_prompt(void) unknown_command(c); break; case 'b': - if (disklabel == SGI_LABEL) { - printf(_("\nThe current boot file is: %s\n"), - sgi_get_bootfile()); - if (read_chars(_("Please enter the name of the " - "new boot file: ")) == '\n') - printf(_("Boot file unchanged\n")); - else - sgi_set_bootfile(line_ptr); - } else if (disklabel == DOS_LABEL) { + if (disklabel == SGI_LABEL) + sgi_set_bootfile(); + else if (disklabel == DOS_LABEL) { disklabel = OSF_LABEL; bsd_command_prompt(); disklabel = DOS_LABEL; diff --git a/fdisk/fdisksgilabel.c b/fdisk/fdisksgilabel.c index 002688a4c..b432b1344 100644 --- a/fdisk/fdisksgilabel.c +++ b/fdisk/fdisksgilabel.c @@ -316,20 +316,21 @@ sgi_check_bootfile(const char* aFile) { return 0; /* filename did not change */ } -const char * -sgi_get_bootfile(void) { - return (char *) sgilabel->boot_file; -} - void -sgi_set_bootfile(const char* aFile) { +sgi_set_bootfile(void) +{ + printf(_("\nThe current boot file is: %s\n"), sgilabel->boot_file); + if (read_chars(_("Please enter the name of the new boot file: ")) == '\n') { + printf(_("Boot file unchanged\n")); + return; + } - if (sgi_check_bootfile(aFile)) { + if (sgi_check_bootfile(line_ptr)) { size_t i = 0; while (i < 16) { - if ((aFile[i] != '\n') /* in principle caught again by next line */ - && (strlen(aFile) > i)) - sgilabel->boot_file[i] = aFile[i]; + if ((line_ptr[i] != '\n') /* in principle caught again by next line */ + && (strlen(line_ptr) > i)) + sgilabel->boot_file[i] = line_ptr[i]; else sgilabel->boot_file[i] = 0; i++; diff --git a/fdisk/fdisksgilabel.h b/fdisk/fdisksgilabel.h index 1c47bb474..255fe9cfa 100644 --- a/fdisk/fdisksgilabel.h +++ b/fdisk/fdisksgilabel.h @@ -133,7 +133,6 @@ extern void sgi_set_bootpartition( int i ); extern void sgi_set_swappartition( int i ); extern int sgi_get_bootpartition( void ); extern int sgi_get_swappartition( void ); -extern void sgi_set_bootfile( const char* aFile ); -extern const char *sgi_get_bootfile( void ); +extern void sgi_set_bootfile(void); #endif /* FDISK_SGI_LABEL_H */ |