diff options
author | Shidokht Yadegari <Shidokht.Yadegari@Sun.COM> | 2010-05-06 14:24:48 -0700 |
---|---|---|
committer | Shidokht Yadegari <Shidokht.Yadegari@Sun.COM> | 2010-05-06 14:24:48 -0700 |
commit | e6f8def1ace27f327240a0b4b090911007f71137 (patch) | |
tree | 98a1ad813b983be1ce4f978d6077dbf572289e12 /usr/src/lib/libfdisk/common/libfdisk.c | |
parent | 485adf6194d7a711f1a48d816798e4481c28dae5 (diff) | |
download | illumos-joyent-e6f8def1ace27f327240a0b4b090911007f71137.tar.gz |
6913353 bootadm update-menu specifies wrong partition number in GRUB findroot OpenSolaris
Diffstat (limited to 'usr/src/lib/libfdisk/common/libfdisk.c')
-rw-r--r-- | usr/src/lib/libfdisk/common/libfdisk.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/usr/src/lib/libfdisk/common/libfdisk.c b/usr/src/lib/libfdisk/common/libfdisk.c index d10443334b..37581f5440 100644 --- a/usr/src/lib/libfdisk/common/libfdisk.c +++ b/usr/src/lib/libfdisk/common/libfdisk.c @@ -19,8 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2010 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. */ #include <stdio.h> @@ -301,8 +300,10 @@ fdisk_is_linux_swap(ext_part_t *epp, uint32_t part_start, uint64_t *lsm_offset) * for the linux swap signature. */ label_offset = (part_start + DK_LABEL_LOC) * sec_sz; - if ((rval = lseek(epp->dev_fd, label_offset, SEEK_SET)) < 0) + if (lseek(epp->dev_fd, label_offset, SEEK_SET) < 0) { + rval = EIO; goto done; + } if ((rval = read(epp->dev_fd, buf, sec_sz)) < sec_sz) { rval = EIO; @@ -325,7 +326,8 @@ fdisk_is_linux_swap(ext_part_t *epp, uint32_t part_start, uint64_t *lsm_offset) seek_offset += part_start; seek_offset *= sec_sz; - if ((rval = lseek(epp->dev_fd, seek_offset, SEEK_SET)) < 0) { + if (lseek(epp->dev_fd, seek_offset, SEEK_SET) < 0) { + rval = EIO; break; } |