summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2013-08-12 00:26:09 +0100
committerKHobbits <rob@khobbits.co.uk>2013-08-12 00:26:51 +0100
commit99d7c2e4c792d6591b351bbeb354f56a8257e2cb (patch)
tree422a845eae6e6d58ad9c8737dd2047a272163803
parent85402be22bd2d5c7bf1ea1162ccbc915de9d07b2 (diff)
downloadEssentials-99d7c2e4c792d6591b351bbeb354f56a8257e2cb.tar
Essentials-99d7c2e4c792d6591b351bbeb354f56a8257e2cb.tar.gz
Essentials-99d7c2e4c792d6591b351bbeb354f56a8257e2cb.tar.lz
Essentials-99d7c2e4c792d6591b351bbeb354f56a8257e2cb.tar.xz
Essentials-99d7c2e4c792d6591b351bbeb354f56a8257e2cb.zip
Prevent inf loop when adding air to kits.
Should fix #4555
-rw-r--r--Essentials/src/com/earth2me/essentials/Kit.java5
-rw-r--r--Essentials/src/com/earth2me/essentials/UserData.java5
-rw-r--r--Essentials/src/com/earth2me/essentials/craftbukkit/InventoryWorkaround.java2
3 files changed, 10 insertions, 2 deletions
diff --git a/Essentials/src/com/earth2me/essentials/Kit.java b/Essentials/src/com/earth2me/essentials/Kit.java
index 02268a796..1b71eefb5 100644
--- a/Essentials/src/com/earth2me/essentials/Kit.java
+++ b/Essentials/src/com/earth2me/essentials/Kit.java
@@ -186,6 +186,11 @@ public class Kit
final String[] parts = kitItem.split(" +");
final ItemStack parseStack = ess.getItemDb().get(parts[0], parts.length > 1 ? Integer.parseInt(parts[1]) : 1);
+
+ if (parseStack.getTypeId() == 0) {
+ continue;
+ }
+
final MetaItemStack metaStack = new MetaItemStack(parseStack);
if (parts.length > 2)
diff --git a/Essentials/src/com/earth2me/essentials/UserData.java b/Essentials/src/com/earth2me/essentials/UserData.java
index 9948a663e..7a8b9b9ae 100644
--- a/Essentials/src/com/earth2me/essentials/UserData.java
+++ b/Essentials/src/com/earth2me/essentials/UserData.java
@@ -150,6 +150,10 @@ public abstract class UserData extends PlayerExtension implements IConf
{
try
{
+ if (getHomes().isEmpty())
+ {
+ return null;
+ }
Location loc;
for (String home : getHomes())
{
@@ -476,7 +480,6 @@ public abstract class UserData extends PlayerExtension implements IConf
config.setProperty("teleportenabled", set);
config.save();
}
-
private List<String> ignoredPlayers;
public List<String> _getIgnoredPlayers()
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/InventoryWorkaround.java b/Essentials/src/com/earth2me/essentials/craftbukkit/InventoryWorkaround.java
index d5da047fe..9e9fea157 100644
--- a/Essentials/src/com/earth2me/essentials/craftbukkit/InventoryWorkaround.java
+++ b/Essentials/src/com/earth2me/essentials/craftbukkit/InventoryWorkaround.java
@@ -94,7 +94,7 @@ public final class InventoryWorkaround
for (int i = 0; i < combined.length; i++)
{
final ItemStack item = combined[i];
- if (item == null)
+ if (item == null || item.getTypeId() == 0)
{
continue;
}