summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsnowleo <schneeleo@gmail.com>2011-07-27 01:00:47 +0200
committersnowleo <schneeleo@gmail.com>2011-07-27 01:00:55 +0200
commitf1efe2e1d25d8168ea99b234c2b5ec5bd8932970 (patch)
tree22d7e0c33f1457292cd363a8a9e4bb167840aa5c
parentb4487b5a132b74b2a941f7733afc63dcc06a755a (diff)
downloadEssentials-f1efe2e1d25d8168ea99b234c2b5ec5bd8932970.tar
Essentials-f1efe2e1d25d8168ea99b234c2b5ec5bd8932970.tar.gz
Essentials-f1efe2e1d25d8168ea99b234c2b5ec5bd8932970.tar.lz
Essentials-f1efe2e1d25d8168ea99b234c2b5ec5bd8932970.tar.xz
Essentials-f1efe2e1d25d8168ea99b234c2b5ec5bd8932970.zip
Fix for money exploit on trade signs
-rw-r--r--Essentials/src/com/earth2me/essentials/signs/SignTrade.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignTrade.java b/Essentials/src/com/earth2me/essentials/signs/SignTrade.java
index 6c0205d34..d9b5f7cc2 100644
--- a/Essentials/src/com/earth2me/essentials/signs/SignTrade.java
+++ b/Essentials/src/com/earth2me/essentials/signs/SignTrade.java
@@ -98,9 +98,14 @@ public class SignTrade extends EssentialsSign
if (split.length == 2 && amountNeeded)
{
final Double money = getMoney(split[0]);
- final Double amount = getDoublePositive(split[1]);
+ Double amount = getDoublePositive(split[1]);
if (money != null && amount != null)
{
+ amount -= amount % money;
+ if (amount < 1 || money < 1)
+ {
+ throw new SignException(Util.i18n("moreThanZero"));
+ }
sign.setLine(index, Util.formatCurrency(money, ess) + ":" + Util.formatCurrency(amount, ess).substring(1));
return;
}