diff --git a/src/main/java/swiss/qpq/gajumaru/core/tools/Grids.java b/src/main/java/swiss/qpq/gajumaru/core/tools/Grids.java index dfe0298..5c46ca3 100644 --- a/src/main/java/swiss/qpq/gajumaru/core/tools/Grids.java +++ b/src/main/java/swiss/qpq/gajumaru/core/tools/Grids.java @@ -93,13 +93,15 @@ public final class Grids { if (path.startsWith("/1/s/")) { String recipient = path.substring(5); Map qargs = parseQuery(query); - BigInteger amount = new BigInteger(qargs.getOrDefault("a", "0")); + String a = qargs.get("a"); + BigInteger amount = (a == null || a.isEmpty()) ? BigInteger.ZERO : new BigInteger(a); byte[] payload = decodePayload(qargs.getOrDefault("p", "")); return ParseResult.spend(Context.CHAIN, host, recipient, amount, payload); } else if (path.startsWith("/1/t/")) { String recipient = path.substring(5); Map qargs = parseQuery(query); - BigInteger amount = new BigInteger(qargs.getOrDefault("a", "0")); + String a = qargs.get("a"); + BigInteger amount = (a == null || a.isEmpty()) ? BigInteger.ZERO : new BigInteger(a); byte[] payload = decodePayload(qargs.getOrDefault("p", "")); String location = host + (uri.getPort() != -1 ? ":" + uri.getPort() : ""); return ParseResult.transfer(Context.NODE, location, recipient, amount, payload);