From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Tamion <70228790+notTamion@users.noreply.github.com>
Date: Mon, 25 Sep 2023 19:55:51 +0200
Subject: [PATCH] Fix PlayerSwapHandItemsEvent throwing exception when mainhand
 or offhand set to null


diff --git a/src/main/java/org/bukkit/event/player/PlayerSwapHandItemsEvent.java b/src/main/java/org/bukkit/event/player/PlayerSwapHandItemsEvent.java
index 9f592317c920589c22a5fb8e916c6ca58ebe5c59..39dd08de71b8b52fe3462c105ecdbfc1cd2cd9a3 100644
--- a/src/main/java/org/bukkit/event/player/PlayerSwapHandItemsEvent.java
+++ b/src/main/java/org/bukkit/event/player/PlayerSwapHandItemsEvent.java
@@ -31,7 +31,7 @@ public class PlayerSwapHandItemsEvent extends PlayerEvent implements Cancellable
      *
      * @return item in the main hand
      */
-    @Nullable
+    @NotNull // Paper
     public ItemStack getMainHandItem() {
         return mainHandItem;
     }
@@ -42,7 +42,7 @@ public class PlayerSwapHandItemsEvent extends PlayerEvent implements Cancellable
      * @param mainHandItem new item in the main hand
      */
     public void setMainHandItem(@Nullable ItemStack mainHandItem) {
-        this.mainHandItem = mainHandItem;
+        this.mainHandItem = mainHandItem == null ? ItemStack.empty() : mainHandItem; // Paper
     }
 
     /**
@@ -50,7 +50,7 @@ public class PlayerSwapHandItemsEvent extends PlayerEvent implements Cancellable
      *
      * @return item in the off hand
      */
-    @Nullable
+    @NotNull // Paper
     public ItemStack getOffHandItem() {
         return offHandItem;
     }
@@ -61,7 +61,7 @@ public class PlayerSwapHandItemsEvent extends PlayerEvent implements Cancellable
      * @param offHandItem new item in the off hand
      */
     public void setOffHandItem(@Nullable ItemStack offHandItem) {
-        this.offHandItem = offHandItem;
+        this.offHandItem = offHandItem == null ? ItemStack.empty() : offHandItem; // Paper
     }
 
     @Override
