diff --git a/Essentials/src/com/earth2me/essentials/Kits.java b/Essentials/src/com/earth2me/essentials/Kits.java index 880f3f511..a1ea2a8e9 100644 --- a/Essentials/src/com/earth2me/essentials/Kits.java +++ b/Essentials/src/com/earth2me/essentials/Kits.java @@ -27,7 +27,7 @@ public class Kits extends AsyncStorageObjectHolder implemen /** * Warning: If you access this method, you have to acquire a read or write lock first - * - * + * + * * @return Object storing all the data */ @Override @@ -93,7 +93,7 @@ public abstract class AsyncStorageObjectHolder implemen { onReload(true); } - + public void onReload(boolean instant) { reader.schedule(instant); @@ -141,6 +141,10 @@ public abstract class AsyncStorageObjectHolder implemen public File onStart() throws IOException { final File file = getStorageFile(); + while (rwl.getReadHoldCount() > 0) + { + rwl.readLock().unlock(); + } rwl.writeLock().lock(); return file; } diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java index b208b5e43..38c6cc3f9 100644 --- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java +++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java @@ -29,6 +29,7 @@ public class EssentialsConnect } ess = (IEssentials)essPlugin; protect = (IProtect)essProtect; + protect.setSettings(new ProtectHolder(ess)); ProtectReloader pr = new ProtectReloader(); pr.onReload(); ess.addReloadListener(pr);