summaryrefslogtreecommitdiff
path: root/usr/src/lib/libfdisk/common/libfdisk.c
diff options
context:
space:
mode:
authorShidokht Yadegari <Shidokht.Yadegari@Sun.COM>2010-05-06 14:24:48 -0700
committerShidokht Yadegari <Shidokht.Yadegari@Sun.COM>2010-05-06 14:24:48 -0700
commite6f8def1ace27f327240a0b4b090911007f71137 (patch)
tree98a1ad813b983be1ce4f978d6077dbf572289e12 /usr/src/lib/libfdisk/common/libfdisk.c
parent485adf6194d7a711f1a48d816798e4481c28dae5 (diff)
downloadillumos-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.c10
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;
}