summaryrefslogtreecommitdiffstats
path: root/fdisk
diff options
context:
space:
mode:
authorFrancesco Cosoleto2011-12-15 20:02:39 +0100
committerKarel Zak2011-12-16 14:04:00 +0100
commit883c5f715833b32137eac78f63b3517e9d1bda17 (patch)
treeabf5ce05952ebe34ecf4b73325547f67c7dea563 /fdisk
parentfdisk: remove possibly_osf_label variable that is only assigned (diff)
downloadkernel-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.c12
-rw-r--r--fdisk/fdisksgilabel.c21
-rw-r--r--fdisk/fdisksgilabel.h3
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 */