1
0
mirror of https://github.com/essentials/Essentials.git synced 2025-08-27 08:24:44 +02:00

Readlocks maybe...

This commit is contained in:
KHobbits
2012-01-04 03:27:25 +00:00
parent 2678be90e3
commit 7b01bc894d
3 changed files with 11 additions and 6 deletions

View File

@@ -33,6 +33,7 @@ public class Kits extends AsyncStorageObjectHolder<com.earth2me.essentials.setti
@Override @Override
public Kit getKit(String kitName) throws Exception public Kit getKit(String kitName) throws Exception
{ {
Kit kit;
acquireReadLock(); acquireReadLock();
try try
{ {
@@ -41,18 +42,18 @@ public class Kits extends AsyncStorageObjectHolder<com.earth2me.essentials.setti
{ {
throw new Exception(_("kitError2")); throw new Exception(_("kitError2"));
} }
Kit kit = getData().getKits().get(kitName.toLowerCase(Locale.ENGLISH)); kit = getData().getKits().get(kitName.toLowerCase(Locale.ENGLISH));
if (kit == null) if (kit == null)
{ {
throw new Exception(_("kitError2")); throw new Exception(_("kitError2"));
} }
return kit;
} }
finally finally
{ {
unlock(); unlock();
} }
return kit;
} }
@Override @Override

View File

@@ -45,7 +45,8 @@ public class Commandeco extends EssentialsCommand
break; break;
case RESET: case RESET:
@Cleanup ISettings settings = ess.getSettings(); @Cleanup
ISettings settings = ess.getSettings();
settings.acquireReadLock(); settings.acquireReadLock();
player.setMoney(amount == 0 ? settings.getData().getEconomy().getStartingBalance() : amount); player.setMoney(amount == 0 ? settings.getData().getEconomy().getStartingBalance() : amount);
break; break;

View File

@@ -676,7 +676,10 @@ public class User extends UserBase implements IUser
final Map<Integer, ItemStack> overfilled; final Map<Integer, ItemStack> overfilled;
if (isAuthorized("essentials.oversizedstacks")) if (isAuthorized("essentials.oversizedstacks"))
{ {
int oversizedStackSize = ess.getSettings().getData().getGeneral().getOversizedStacksize(); @Cleanup
final ISettings settings = ess.getSettings();
settings.acquireReadLock();
int oversizedStackSize = settings.getData().getGeneral().getOversizedStacksize();
overfilled = InventoryWorkaround.addItem(getInventory(), true, oversizedStackSize, itemStack); overfilled = InventoryWorkaround.addItem(getInventory(), true, oversizedStackSize, itemStack);
} }