diff --git a/src/members-payments.scm b/src/members-payments.scm index 94a2a19..ccd87e3 100644 --- a/src/members-payments.scm +++ b/src/members-payments.scm @@ -147,17 +147,22 @@ (if apikeys-file (let* ((acc-list (load-accounts-list apikeys-file)) (accounts (if acc-list (load-accounts acc-list dir) #f)) + (total (length accounts)) (last-checked (get-latest-checked-id checked-fn))) (if accounts (with-progress% #t "Payments" (progress%-advance 0) - (let ((mbp (foldl (lambda (mb ba) - (members-payments-process-bank mb ba last-checked)) - mb - (filter identity - accounts)))) - (members-base-update mbp identity member-sort-payments))) + (let loop ((mb mb) + (idx 0) + (accounts accounts)) + (if (null? accounts) + (members-base-update mb identity member-sort-payments) + (let () + (progress%-advance (/ idx total)) + (loop (members-payments-process-bank mb (car accounts) last-checked) + (add1 idx) + (cdr accounts)))))) (let () (print "Warning: no accounts loaded!") mb)))