diff options
author | mav <mav@FreeBSD.org> | 2018-03-22 23:53:18 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2018-03-22 23:53:18 +0000 |
commit | 4dfbe8b3ac42df8d0b6664fd64b5abd36a56d1a2 (patch) | |
tree | 6c34512290a0497251a8672200d97381733d4ef3 /cddl/contrib/opensolaris/lib/libzfs/common | |
parent | 96d3ef541ce7de89b4a2a98aee5c283ad1eb0b5f (diff) | |
download | FreeBSD-src-4dfbe8b3ac42df8d0b6664fd64b5abd36a56d1a2.zip FreeBSD-src-4dfbe8b3ac42df8d0b6664fd64b5abd36a56d1a2.tar.gz |
MFC r329668: MFV r316918:
7990 libzfs: snapspec_cb() does not need to call zfs_strdup()
illumos/illumos-gate@d8584ba6fb7a5e46da1725845b99ae5fab5a4baf
https://github.com/illumos/illumos-gate/commit/d8584ba6fb7a5e46da1725845b99ae5fab5a4baf
https://www.illumos.org/issues/7990
The snapspec_cb() callback function in libzfs does not need to call zfs_strdup().
Reviewed by: Yuri Pankov <yuri.pankov@gmail.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Approved by: Matthew Ahrens <mahrens@delphix.com>
Author: Marcel Telka <marcel@telka.sk>
Diffstat (limited to 'cddl/contrib/opensolaris/lib/libzfs/common')
-rw-r--r-- | cddl/contrib/opensolaris/lib/libzfs/common/libzfs_iter.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_iter.c b/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_iter.c index ac26a67..ae6173e 100644 --- a/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_iter.c +++ b/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_iter.c @@ -317,16 +317,17 @@ static int snapspec_cb(zfs_handle_t *zhp, void *arg) { snapspec_arg_t *ssa = arg; - char *shortsnapname; + const char *shortsnapname; int err = 0; if (ssa->ssa_seenlast) return (0); - shortsnapname = zfs_strdup(zhp->zfs_hdl, - strchr(zfs_get_name(zhp), '@') + 1); + shortsnapname = strchr(zfs_get_name(zhp), '@') + 1; if (!ssa->ssa_seenfirst && strcmp(shortsnapname, ssa->ssa_first) == 0) ssa->ssa_seenfirst = B_TRUE; + if (strcmp(shortsnapname, ssa->ssa_last) == 0) + ssa->ssa_seenlast = B_TRUE; if (ssa->ssa_seenfirst) { err = ssa->ssa_func(zhp, ssa->ssa_arg); @@ -334,10 +335,6 @@ snapspec_cb(zfs_handle_t *zhp, void *arg) zfs_close(zhp); } - if (strcmp(shortsnapname, ssa->ssa_last) == 0) - ssa->ssa_seenlast = B_TRUE; - free(shortsnapname); - return (err); } |