Skip to content

Commit 1e5cf6e

Browse files
committed
feat: never peg ordinals into MWEB
it destroys them
1 parent e673f61 commit 1e5cf6e

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

lib/wallets/wallet/wallet_mixin_interfaces/mweb_interface.dart

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import '../../../models/input.dart';
1414
import '../../../models/isar/models/blockchain_data/v2/output_v2.dart';
1515
import '../../../models/isar/models/blockchain_data/v2/transaction_v2.dart';
1616
import '../../../models/isar/models/isar_models.dart';
17+
import '../../../models/isar/ordinal.dart';
1718
import '../../../services/event_bus/events/global/blocks_remaining_event.dart';
1819
import '../../../services/event_bus/events/global/refresh_percent_changed_event.dart';
1920
import '../../../services/event_bus/events/global/wallet_sync_status_changed_event.dart';
@@ -649,6 +650,20 @@ mixin MwebInterface<T extends ElectrumXCurrencyInterface>
649650
),
650651
);
651652

653+
// Never peg ordinal UTXOs into MWEB.
654+
spendableUtxos.removeWhere((e) {
655+
final ord = mainDB.isar.ordinals
656+
.where()
657+
.filter()
658+
.walletIdEqualTo(walletId)
659+
.and()
660+
.utxoTXIDEqualTo(e.txid)
661+
.and()
662+
.utxoVOUTEqualTo(e.vout)
663+
.findFirstSync();
664+
return ord != null;
665+
});
666+
652667
if (spendableUtxos.isEmpty) {
653668
throw Exception("No available UTXOs found to anonymize");
654669
}

0 commit comments

Comments
 (0)