From c99a2ba29612887de4e8e9707d6988f0dd5c169f Mon Sep 17 00:00:00 2001 From: Overtorment Date: Fri, 27 Nov 2020 16:35:14 +0000 Subject: [PATCH] FIX: import *.txn file with txhex - extra newline characted prevented it from being recognized (closes #2161) --- screen/send/details.js | 3 ++- screen/send/psbtWithHardwareWallet.js | 3 ++- screen/wallets/details.js | 22 +++++++++++++++++++++- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/screen/send/details.js b/screen/send/details.js index 3d766b356..a6872d36e 100644 --- a/screen/send/details.js +++ b/screen/send/details.js @@ -922,7 +922,8 @@ export default class SendDetails extends Component { this.setState({ isLoading: false, isAdvancedTransactionOptionsVisible: false }); } else if (DeeplinkSchemaMatch.isTXNFile(res.uri)) { // plain text file with txhex ready to broadcast - const file = await RNFS.readFile(res.uri, 'ascii'); + const file = (await RNFS.readFile(res.uri, 'ascii')).replace('\n', '').replace('\r', ''); + console.warn(JSON.stringify(file)); this.props.navigation.navigate('PsbtWithHardwareWallet', { memo: this.state.memo, fromWallet: this.state.fromWallet, diff --git a/screen/send/psbtWithHardwareWallet.js b/screen/send/psbtWithHardwareWallet.js index 4112c69e9..1d2b6ba71 100644 --- a/screen/send/psbtWithHardwareWallet.js +++ b/screen/send/psbtWithHardwareWallet.js @@ -131,8 +131,9 @@ const PsbtWithHardwareWallet = () => { if (memo) { txMetadata[txid] = { memo }; } - fetchAndSaveWalletTransactions(fromWallet.getID()); navigation.navigate('Success', { amount: undefined }); + await new Promise(resolve => setTimeout(resolve, 3000)); // sleep to make sure network propagates + fetchAndSaveWalletTransactions(fromWallet.getID()); } else { ReactNativeHapticFeedback.trigger('notificationError', { ignoreAndroidSystemSettings: false }); setIsLoading(false); diff --git a/screen/wallets/details.js b/screen/wallets/details.js index 6a9a5bfa3..295af51a2 100644 --- a/screen/wallets/details.js +++ b/screen/wallets/details.js @@ -302,6 +302,24 @@ const WalletDetails = () => { } }; + const purgeTransactions = async () => { + if (backdoorPressed < 10) return setBackdoorPressed(backdoorPressed + 1); + setBackdoorPressed(0); + const msg = 'Transactions purged. Pls go to main screen and back to rerender screen'; + + if (wallet.type === HDSegwitBech32Wallet.type) { + wallet._txs_by_external_index = {}; + wallet._txs_by_internal_index = {}; + alert(msg); + } + + if (wallet._hdWalletInstance) { + wallet._hdWalletInstance._txs_by_external_index = {}; + wallet._hdWalletInstance._txs_by_internal_index = {}; + alert(msg); + } + }; + const navigateToBroadcast = () => { navigate('Broadcast'); }; @@ -435,7 +453,9 @@ const WalletDetails = () => { <> - {loc.transactions.transactions_count.toLowerCase()} + + {loc.transactions.transactions_count.toLowerCase()} + {wallet.getTransactions().length}