Module Name: src
Committed By: mrg
Date: Wed Jul 6 01:19:45 UTC 2011
Modified Files:
src/sys/arch/landisk/stand/boot: biosdisk.c
Log Message:
avoid a "multi-level non-const cast" warning from GCC 4.5.
To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/landisk/stand/boot/biosdisk.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/landisk/stand/boot/biosdisk.c
diff -u src/sys/arch/landisk/stand/boot/biosdisk.c:1.1 src/sys/arch/landisk/stand/boot/biosdisk.c:1.2
--- src/sys/arch/landisk/stand/boot/biosdisk.c:1.1 Fri Sep 1 21:26:18 2006
+++ src/sys/arch/landisk/stand/boot/biosdisk.c Wed Jul 6 01:19:45 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: biosdisk.c,v 1.1 2006/09/01 21:26:18 uwe Exp $ */
+/* $NetBSD: biosdisk.c,v 1.2 2011/07/06 01:19:45 mrg Exp $ */
/*
* Copyright (c) 1996, 1998
@@ -133,6 +133,7 @@
static int
read_label(struct biosdisk *d)
{
+ struct mbr_sector *mbr_sect;
struct disklabel dflt_lbl;
struct mbr_partition mbr[MBR_PART_COUNT];
struct partition *p;
@@ -158,13 +159,15 @@
for (;;) {
this_ext = ext_base + next_ext;
next_ext = 0;
+ mbr_sect = (struct mbr_sector *)d->buf;
+ memcpy(&mbr, mbr_sect->mbr_parts, sizeof(mbr));
if (readsects(d->dev, this_ext, d->buf, 1)) {
#ifdef DISK_DEBUG
printf("error reading MBR sector %d\n", this_ext);
#endif
return (EIO);
}
- memcpy(&mbr, ((struct mbr_sector *)d->buf)->mbr_parts, sizeof(mbr));
+ memcpy(&mbr, mbr_sect->mbr_parts, sizeof(mbr));
/* Look for NetBSD partition ID */
for (i = 0; i < MBR_PART_COUNT; i++) {
typ = mbr[i].mbrp_type;