summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2004-01-28 03:38:25 +0000
committermarcel <marcel@FreeBSD.org>2004-01-28 03:38:25 +0000
commit58948e726184fc748538cd77b12482414becaf10 (patch)
treeb7919a5c8f5b7377783dff2efcbeaa4b92fe2d66 /lib
parent3f0b112d3c6b53e15a963aa29f36cc0fb2a855fc (diff)
downloadFreeBSD-src-58948e726184fc748538cd77b12482414becaf10.zip
FreeBSD-src-58948e726184fc748538cd77b12482414becaf10.tar.gz
Fix an uninitialized variable bug that caused write_pmbr() to bogusly
return an error value that made Write_Disk() abort. While on the subject, improve the initialization of the error variable in read_gpt() and update_gpt() even though nothing was broken there.
Diffstat (limited to 'lib')
-rw-r--r--lib/libdisk/write_ia64_disk.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/libdisk/write_ia64_disk.c b/lib/libdisk/write_ia64_disk.c
index 7ec82ad..b57bbd8 100644
--- a/lib/libdisk/write_ia64_disk.c
+++ b/lib/libdisk/write_ia64_disk.c
@@ -121,6 +121,7 @@ write_pmbr(int fd, const struct disk *disk)
u_long nsects;
int error;
+ error = 0;
nsects = disk->media_size / disk->sector_size;
buffer = calloc(disk->sector_size, 1);
if (buffer == NULL)
@@ -153,6 +154,7 @@ read_gpt(int fd, const struct disk *disk, struct gpt_hdr *hdr,
size_t nsects, sz;
int error, i;
+ error = 0;
nsects = disk->gpt_size * sizeof(struct gpt_ent) / disk->sector_size;
nsects++;
sz = nsects * disk->sector_size;
@@ -191,7 +193,6 @@ read_gpt(int fd, const struct disk *disk, struct gpt_hdr *hdr,
uuid_create(&tbl[i].ent_uuid, NULL);
}
- error = 0;
goto bail;
}
@@ -213,7 +214,6 @@ read_gpt(int fd, const struct disk *disk, struct gpt_hdr *hdr,
goto bail;
}
memcpy(&hdr[1], buffer, sizeof(struct gpt_hdr));
- error = 0;
bail:
free(buffer);
@@ -231,6 +231,8 @@ update_gpt(int fd, const struct disk *disk, struct gpt_hdr *hdr,
size_t bufsz;
int error, idx, sav;
+ error = 0;
+
/*
* Save the entries of those chunks that have an index. They are
* the ones that exist on disk already.
@@ -358,7 +360,6 @@ update_gpt(int fd, const struct disk *disk, struct gpt_hdr *hdr,
error = (errno) ? errno : EAGAIN;
goto bail;
}
- error = 0;
bail:
free(buffer);
OpenPOWER on IntegriCloud