summaryrefslogtreecommitdiff
path: root/packages/taler-wallet-core/src/operations/backup/import.ts
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2021-04-07 19:29:51 +0200
committerFlorian Dold <florian@dold.me>2021-04-07 19:29:51 +0200
commit4fa88007f958796d7fe65d0fe4f6f45fcf953887 (patch)
tree4f6e5798cc74b19b6eda13dfcd5daa855a5c8c9a /packages/taler-wallet-core/src/operations/backup/import.ts
parent29d710c392c2b28e8c8c2a177c8de40061a58e77 (diff)
downloadwallet-core-4fa88007f958796d7fe65d0fe4f6f45fcf953887.tar.gz
wallet-core-4fa88007f958796d7fe65d0fe4f6f45fcf953887.tar.bz2
wallet-core-4fa88007f958796d7fe65d0fe4f6f45fcf953887.zip
get coin re-selection after accidental double spending to work
Diffstat (limited to 'packages/taler-wallet-core/src/operations/backup/import.ts')
-rw-r--r--packages/taler-wallet-core/src/operations/backup/import.ts39
1 files changed, 36 insertions, 3 deletions
diff --git a/packages/taler-wallet-core/src/operations/backup/import.ts b/packages/taler-wallet-core/src/operations/backup/import.ts
index 05b6da084..e0ae379ab 100644
--- a/packages/taler-wallet-core/src/operations/backup/import.ts
+++ b/packages/taler-wallet-core/src/operations/backup/import.ts
@@ -14,11 +14,42 @@
GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
*/
-import { BackupPurchase, AmountJson, Amounts, BackupDenomSel, WalletBackupContentV1, getTimestampNow, BackupCoinSourceType, BackupProposalStatus, codecForContractTerms, BackupRefundState, RefreshReason, BackupRefreshReason } from "@gnu-taler/taler-util";
-import { Stores, WalletContractData, DenomSelectionState, ExchangeWireInfo, ExchangeUpdateStatus, DenominationStatus, CoinSource, CoinSourceType, CoinStatus, ReserveBankInfo, ReserveRecordStatus, ProposalDownload, ProposalStatus, WalletRefundItem, RefundState, AbortStatus, RefreshSessionRecord } from "../../db.js";
+import {
+ BackupPurchase,
+ AmountJson,
+ Amounts,
+ BackupDenomSel,
+ WalletBackupContentV1,
+ getTimestampNow,
+ BackupCoinSourceType,
+ BackupProposalStatus,
+ codecForContractTerms,
+ BackupRefundState,
+ RefreshReason,
+ BackupRefreshReason,
+} from "@gnu-taler/taler-util";
+import {
+ Stores,
+ WalletContractData,
+ DenomSelectionState,
+ ExchangeWireInfo,
+ ExchangeUpdateStatus,
+ DenominationStatus,
+ CoinSource,
+ CoinSourceType,
+ CoinStatus,
+ ReserveBankInfo,
+ ReserveRecordStatus,
+ ProposalDownload,
+ ProposalStatus,
+ WalletRefundItem,
+ RefundState,
+ AbortStatus,
+ RefreshSessionRecord,
+} from "../../db.js";
import { TransactionHandle } from "../../index.js";
import { PayCoinSelection } from "../../util/coinSelection";
-import { j2s } from "../../util/helpers";
+import { j2s } from "@gnu-taler/taler-util";
import { checkDbInvariant, checkLogicInvariant } from "../../util/invariants";
import { Logger } from "../../util/logging";
import { initRetryInfo } from "../../util/retries";
@@ -271,6 +302,8 @@ export async function importBackup(
denomPubHash,
]);
if (!existingDenom) {
+ logger.info(`importing backup denomination: ${j2s(backupDenomination)}`);
+
await tx.put(Stores.denominations, {
denomPub: backupDenomination.denom_pub,
denomPubHash: denomPubHash,