From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Fri, 21 Feb 2020 18:44:28 +0000
Subject: [PATCH] Backport fix for MC-167561


diff --git a/src/main/java/net/minecraft/server/EntityWolf.java b/src/main/java/net/minecraft/server/EntityWolf.java
index db15d5e0a23c414742ac73785d29aeadd432d3d7..eec1e26b6eba07c31d251ecf69dc36199688110e 100644
--- a/src/main/java/net/minecraft/server/EntityWolf.java
+++ b/src/main/java/net/minecraft/server/EntityWolf.java
@@ -296,7 +296,14 @@ public class EntityWolf extends EntityTameableAnimal {
                     boolean flag = super.a(entityhuman, enumhand);
 
                     if (!flag || this.isBaby()) {
-                        this.goalSit.setSitting(!this.isSitting());
+                        //this.goalSit.setSitting(!this.isSitting()); // Paper start - copied from below
+                        if (this.i((EntityLiving) entityhuman) && !this.i(itemstack)) {
+                            this.goalSit.setSitting(!this.isSitting());
+                            this.jumping = false;
+                            this.navigation.o();
+                            this.setGoalTarget((EntityLiving) null, TargetReason.FORGOT_TARGET, true); // CraftBukkit - reason
+                        }
+                        // Paper end - copied from below
                     }
 
                     return flag;
@@ -313,12 +320,14 @@ public class EntityWolf extends EntityTameableAnimal {
                     return true;
                 }
 
+                /* Paper start - Move into above
                 if (this.i((EntityLiving) entityhuman) && !this.i(itemstack)) {
                     this.goalSit.setSitting(!this.isSitting());
                     this.jumping = false;
                     this.navigation.o();
                     this.setGoalTarget((EntityLiving) null, TargetReason.FORGOT_TARGET, true); // CraftBukkit - reason
                 }
+                 */ // Paper end
             } else if (item == Items.BONE && !this.isAngry()) {
                 if (!entityhuman.abilities.canInstantlyBuild) {
                     itemstack.subtract(1);
