mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-06-29 04:49:51 +00:00
fix: add unrecoverable error handling for Payjoin sender sessions
This commit is contained in:
parent
dd689803e0
commit
f7a4ddae28
2 changed files with 5 additions and 6 deletions
|
@ -121,15 +121,13 @@ class PayjoinManager {
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
_cleanupSession(pjUri);
|
_cleanupSession(pjUri);
|
||||||
printV(e);
|
await _payjoinStorage.markSenderSessionUnrecoverable(pjUri, e.toString());
|
||||||
await _payjoinStorage.markSenderSessionUnrecoverable(pjUri);
|
completer.complete();
|
||||||
completer.completeError(e);
|
|
||||||
}
|
}
|
||||||
} else if (message is PayjoinSessionError) {
|
} else if (message is PayjoinSessionError) {
|
||||||
_cleanupSession(pjUri);
|
_cleanupSession(pjUri);
|
||||||
if (message is UnrecoverableError) {
|
if (message is UnrecoverableError) {
|
||||||
printV(message.message);
|
await _payjoinStorage.markSenderSessionUnrecoverable(pjUri, message.message);
|
||||||
await _payjoinStorage.markSenderSessionUnrecoverable(pjUri);
|
|
||||||
completer.complete();
|
completer.complete();
|
||||||
} else if (message is RecoverableError) {
|
} else if (message is RecoverableError) {
|
||||||
completer.complete();
|
completer.complete();
|
||||||
|
|
|
@ -84,10 +84,11 @@ class PayjoinStorage {
|
||||||
await session.save();
|
await session.save();
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> markSenderSessionUnrecoverable(String pjUrl) async {
|
Future<void> markSenderSessionUnrecoverable(String pjUrl, String reason) async {
|
||||||
final session = _payjoinSessionSources.get("$_senderPrefix$pjUrl")!;
|
final session = _payjoinSessionSources.get("$_senderPrefix$pjUrl")!;
|
||||||
|
|
||||||
session.status = PayjoinSessionStatus.unrecoverable.name;
|
session.status = PayjoinSessionStatus.unrecoverable.name;
|
||||||
|
session.error = reason;
|
||||||
await session.save();
|
await session.save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue