diff --git a/src/main/java/org/qortal/block/Block.java b/src/main/java/org/qortal/block/Block.java index e84250ca..7b155a53 100644 --- a/src/main/java/org/qortal/block/Block.java +++ b/src/main/java/org/qortal/block/Block.java @@ -1100,6 +1100,10 @@ public class Block { // Apply fix for block 535658 but fix will be rolled back before we exit method Block535658.processFix(this); } + else if (this.blockData.getHeight() == 536140) { + // Apply fix for block 536140 but fix will be rolled back before we exit method + Block536140.processFix(this); + } for (Transaction transaction : this.getTransactions()) { TransactionData transactionData = transaction.getTransactionData(); diff --git a/src/main/java/org/qortal/block/Block536140.java b/src/main/java/org/qortal/block/Block536140.java new file mode 100644 index 00000000..ab1ca58f --- /dev/null +++ b/src/main/java/org/qortal/block/Block536140.java @@ -0,0 +1,21 @@ +package org.qortal.block; + +import org.qortal.naming.Name; +import org.qortal.repository.DataException; + +public final class Block536140 { + + private Block536140() { + /* Do not instantiate */ + } + + public static void processFix(Block block) throws DataException { + // Unregister the existing name record if it exists + // This ensures that the duplicate name is considered valid, and therefore + // the second (i.e. duplicate) REGISTER_NAME transaction data is applied. + // Both were issued by the same user account, so there is no conflict. + Name name = new Name(block.repository, "Qweb"); + name.unregister(); + } + +}