diff options
author | mav <mav@FreeBSD.org> | 2015-10-18 18:32:22 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2015-10-18 18:32:22 +0000 |
commit | 14f613391579f707498faa0327abbbdbe979a1bb (patch) | |
tree | c321e653ce4340163517c71253ac2a119ab97a81 /cddl | |
parent | 8a5f64069af62a6675dc9ba61325d2a112ad869c (diff) | |
download | FreeBSD-src-14f613391579f707498faa0327abbbdbe979a1bb.zip FreeBSD-src-14f613391579f707498faa0327abbbdbe979a1bb.tar.gz |
MFV r289530: 5847 libzfs_diff should check zfs_prop_get() return
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Albert Lee <trisk@omniti.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Alexander Eremin <a.eremin@nexenta.com>
illumos/illumos-gate@8430278980a48338e04c7dd52b495b7f1551367a
Diffstat (limited to 'cddl')
-rw-r--r-- | cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c b/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c index dde329a..bb49eba 100644 --- a/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c +++ b/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c @@ -21,6 +21,7 @@ /* * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright 2015 Nexenta Systems, Inc. All rights reserved. */ /* @@ -624,9 +625,12 @@ get_snapshot_names(differ_info_t *di, const char *fromsnap, zhp = zfs_open(hdl, di->ds, ZFS_TYPE_FILESYSTEM); while (zhp != NULL) { - (void) zfs_prop_get(zhp, ZFS_PROP_ORIGIN, - origin, sizeof (origin), &src, NULL, 0, B_FALSE); - + if (zfs_prop_get(zhp, ZFS_PROP_ORIGIN, origin, + sizeof (origin), &src, NULL, 0, B_FALSE) != 0) { + (void) zfs_close(zhp); + zhp = NULL; + break; + } if (strncmp(origin, fromsnap, fsnlen) == 0) break; |