From d5e142d475d24ef1c0ffec2a812e2995e579138d Mon Sep 17 00:00:00 2001 From: The MMGen Project Date: Sat, 22 Nov 2025 09:04:08 +0000 Subject: [PATCH] xmrwallet.ops.wallet: support returning data from `main()` --- mmgen/xmrwallet/ops/__init__.py | 1 + mmgen/xmrwallet/ops/wallet.py | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/mmgen/xmrwallet/ops/__init__.py b/mmgen/xmrwallet/ops/__init__.py index 42200cc2..9ec1b595 100755 --- a/mmgen/xmrwallet/ops/__init__.py +++ b/mmgen/xmrwallet/ops/__init__.py @@ -29,6 +29,7 @@ class OpBase: trust_monerod = False do_umount = True name = None + return_data = False def __init__(self, cfg, uarg_tuple): diff --git a/mmgen/xmrwallet/ops/wallet.py b/mmgen/xmrwallet/ops/wallet.py index 252dcfa2..24125c1b 100755 --- a/mmgen/xmrwallet/ops/wallet.py +++ b/mmgen/xmrwallet/ops/wallet.py @@ -207,7 +207,7 @@ class OpWallet(OpBase): b = len(self.addr_data), c = self.add_wallet_desc, d = suf(self.addr_data))) - processed = 0 + data = [] for n, d in enumerate(self.addr_data): # [d.sec,d.addr,d.wallet_passwd,d.viewkey] fn = self.get_wallet_fn(d) gmsg('\n{a}ing wallet {b}/{c} ({d})'.format( @@ -215,9 +215,9 @@ class OpWallet(OpBase): b = n + 1, c = len(self.addr_data), d = fn.name)) - processed += await self.process_wallet(d, fn, last=n==len(self.addr_data)-1) - gmsg(f'\n{processed} wallet{suf(processed)} {self.stem}ed\n') - return processed + data.append(await self.process_wallet(d, fn, last=n == len(self.addr_data) - 1)) + gmsg(f'\n{len(data)} wallet{suf(len(data))} {self.stem}ed\n') + return data if self.return_data else sum(map(bool, data)) def head_msg(self, wallet_idx, fn): gmsg('\n{a} {b}wallet #{c} ({d})'.format(