Author: avg
Date: Mon Oct 30 10:35:45 2017
New Revision: 325152
URL: https://svnweb.freebsd.org/changeset/base/325152

Log:
  MFC r324348: MFV r316934: 7340 receive manual origin should override 
automatic origin

Modified:
  stable/10/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c
==============================================================================
--- stable/10/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c      
Mon Oct 30 10:35:03 2017        (r325151)
+++ stable/10/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c      
Mon Oct 30 10:35:45 2017        (r325152)
@@ -3195,7 +3195,12 @@ zfs_receive_one(libzfs_handle_t *hdl, int infd, const 
        /*
         * Determine the name of the origin snapshot, store in zc_string.
         */
-       if (drrb->drr_flags & DRR_FLAG_CLONE) {
+       if (originsnap) {
+               (void) strncpy(zc.zc_string, originsnap, sizeof (zc.zc_string));
+               if (flags->verbose)
+                       (void) printf("using provided clone origin %s\n",
+                           zc.zc_string);
+       } else if (drrb->drr_flags & DRR_FLAG_CLONE) {
                if (guid_to_name(hdl, zc.zc_value,
                    drrb->drr_fromguid, B_FALSE, zc.zc_string) != 0) {
                        zcmd_free_nvlists(&zc);
@@ -3206,11 +3211,6 @@ zfs_receive_one(libzfs_handle_t *hdl, int infd, const 
                }
                if (flags->verbose)
                        (void) printf("found clone origin %s\n", zc.zc_string);
-       } else if (originsnap) {
-               (void) strncpy(zc.zc_string, originsnap, sizeof (zc.zc_string));
-               if (flags->verbose)
-                       (void) printf("using provided clone origin %s\n",
-                           zc.zc_string);
        }
 
        boolean_t resuming = DMU_GET_FEATUREFLAGS(drrb->drr_versioninfo) &
_______________________________________________
svn-src-stable-10@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10
To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"

Reply via email to