From 159098b085958c54aff91aeb6fcb8e792b8667d7 Mon Sep 17 00:00:00 2001 From: Edgar Goetzendorff Date: Wed, 6 Nov 2019 10:24:00 +0100 Subject: [PATCH] fix(core-transactions): add ipfs exception handling (#3217) --- packages/core-transactions/src/handlers/ipfs.ts | 6 +++++- packages/crypto/src/networks/devnet/exceptions.json | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/core-transactions/src/handlers/ipfs.ts b/packages/core-transactions/src/handlers/ipfs.ts index 2441aeda59..6f30ef1945 100644 --- a/packages/core-transactions/src/handlers/ipfs.ts +++ b/packages/core-transactions/src/handlers/ipfs.ts @@ -1,5 +1,5 @@ import { Database, State, TransactionPool } from "@arkecosystem/core-interfaces"; -import { Interfaces, Managers, Transactions } from "@arkecosystem/crypto"; +import { Interfaces, Managers, Transactions, Utils } from "@arkecosystem/crypto"; import { IpfsHashAlreadyExists } from "../errors"; import { TransactionReader } from "../transaction-reader"; import { TransactionHandler, TransactionHandlerConstructor } from "./transaction"; @@ -45,6 +45,10 @@ export class IpfsTransactionHandler extends TransactionHandler { wallet: State.IWallet, walletManager: State.IWalletManager, ): Promise { + if (Utils.isException(transaction.data)) { + return; + } + if (walletManager.getIndex("ipfs").has(transaction.data.asset.ipfs)) { throw new IpfsHashAlreadyExists(); } diff --git a/packages/crypto/src/networks/devnet/exceptions.json b/packages/crypto/src/networks/devnet/exceptions.json index 7bc610649d..5ccd901f19 100644 --- a/packages/crypto/src/networks/devnet/exceptions.json +++ b/packages/crypto/src/networks/devnet/exceptions.json @@ -356,6 +356,9 @@ "547ff32c8e709b6f2c79bf78b0c39d82cd6b845705be1c4263f0107b8b1f8ec1", "04d772ff7977051c7515e29eeafa283af843cbc0364c109ae6c04884df608d93", "c2d02bd4475c84222bd7eddd13743b319cdd0596cf4fd1f4303ac9a2d158f302", - "baa9d3d9ed8d57f1d4b0233ecdf00ef8f12e28ceb764e62cece2afef1c358d60" + "baa9d3d9ed8d57f1d4b0233ecdf00ef8f12e28ceb764e62cece2afef1c358d60", + "a4e312e7ba1376440061f3c3ffe529c16b64489862ffb979b904f491985de1a1", + "11561c1354e6ceaf2c269916bf21e2fed1acb995a609deb340cec867f6bf7005", + "98342cce815de243f42d346b67715fa5fb7dc1eb37631f2d6425ed9003a83bc5" ] }