set seed language if seed_language is in error message (#2135)
cyan committed
Mar 30, 2025 at 04:09 UTC
7831b421b1bf1a43320aec5b752f245d0cb79b65
1 file changed
+16
-10
cw_monero/lib/api/wallet.dart
+16
-10
@@ -75,22 +75,28 @@ String? getSeedLanguage(String? language) {
75
76
String getSeedLegacy(String? language) {
77
final cakepassphrase = getPassphrase();
78
- var legacy = monero.Wallet_seed(wptr!, seedOffset: cakepassphrase);
78
language = getSeedLanguage(language);
79
+ var legacy = monero.Wallet_seed(wptr!, seedOffset: cakepassphrase);
80
if (monero.Wallet_status(wptr!) != 0) {
81
- if (language != null) {
82
- monero.Wallet_setSeedLanguage(wptr!, language: language);
83
- final status = monero.Wallet_status(wptr!);
84
- if (status != 0) {
85
- final err = monero.Wallet_errorString(wptr!);
86
- if (legacy.isNotEmpty) {
87
- return "$err\n\n$legacy";
88
- }
89
- return err;
81
+ if (monero.Wallet_errorString(wptr!).contains("seed_language")) {
82
+ monero.Wallet_setSeedLanguage(wptr!, language: "English");
83
+ legacy = monero.Wallet_seed(wptr!, seedOffset: cakepassphrase);
84
+ }
85
+ }
86
+
87
+ if (language != null) {
88
+ monero.Wallet_setSeedLanguage(wptr!, language: language);
89
+ final status = monero.Wallet_status(wptr!);
90
+ if (status != 0) {
91
+ final err = monero.Wallet_errorString(wptr!);
92
+ if (legacy.isNotEmpty) {
93
+ return "$err\n\n$legacy";
94
}
95
+ return err;
96
}
97
legacy = monero.Wallet_seed(wptr!, seedOffset: cakepassphrase);
98
}
99
+
100
if (monero.Wallet_status(wptr!) != 0) {
101
final err = monero.Wallet_errorString(wptr!);
102
if (legacy.isNotEmpty) {