From 6cfd85bdce21305669d368233cb649b88d7deebc Mon Sep 17 00:00:00 2001 From: CalDescent Date: Fri, 2 Sep 2022 18:05:12 +0100 Subject: [PATCH] Skip over ARRR orders in /refundAll and /redeemAll, as ARRR support hasn't been added for these yet. This should fix 500 error which could prevent forced refund attempts for LTC and other chains. It wouldn't have affected any normal trade-bot refund functionality. --- .../qortal/api/resource/CrossChainHtlcResource.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/main/java/org/qortal/api/resource/CrossChainHtlcResource.java b/src/main/java/org/qortal/api/resource/CrossChainHtlcResource.java index fbcde1a6..05921ab1 100644 --- a/src/main/java/org/qortal/api/resource/CrossChainHtlcResource.java +++ b/src/main/java/org/qortal/api/resource/CrossChainHtlcResource.java @@ -9,6 +9,7 @@ import io.swagger.v3.oas.annotations.tags.Tag; import java.math.BigDecimal; import java.util.List; +import java.util.Objects; import javax.servlet.http.HttpServletRequest; import javax.ws.rs.*; @@ -284,6 +285,12 @@ public class CrossChainHtlcResource { continue; } + Bitcoiny bitcoiny = (Bitcoiny) acct.getBlockchain(); + if (Objects.equals(bitcoiny.getCurrencyCode(), "ARRR")) { + LOGGER.info("Skipping AT {} because ARRR is currently unsupported", atAddress); + continue; + } + CrossChainTradeData crossChainTradeData = acct.populateTradeData(repository, atData); if (crossChainTradeData == null) { LOGGER.info("Couldn't find crosschain trade data for AT {}", atAddress); @@ -532,6 +539,11 @@ public class CrossChainHtlcResource { try { // Determine foreign blockchain receive address for refund Bitcoiny bitcoiny = (Bitcoiny) acct.getBlockchain(); + if (Objects.equals(bitcoiny.getCurrencyCode(), "ARRR")) { + LOGGER.info("Skipping AT {} because ARRR is currently unsupported", atAddress); + continue; + } + String receivingAddress = bitcoiny.getUnusedReceiveAddress(tradeBotData.getForeignKey()); LOGGER.info("Attempting to refund P2SH balance associated with AT {}...", atAddress);