Przeglądaj źródła

[saver] fix stopping payments problem

Innocenty Enikeew 8 lat temu
rodzic
commit
af455c82cf
1 zmienionych plików z 5 dodań i 4 usunięć
  1. 5 4
      plugins/saver.lisp

+ 5 - 4
plugins/saver.lisp

@@ -150,12 +150,13 @@
     (loop for payment in expenses
        for cur-info = (saver/get-expense-info payment incomes moment)
        for nxt-info = (saver/get-expense-info payment incomes (saver/payment-next-time income moment))
-       summing (getf cur-info :saved-amount) into cur-saved
-       summing (getf cur-info :left-amount) into cur-left
-       summing (if (> (getf nxt-info :left-periods) 1)
+       when cur-info
+       summing (getf cur-info :saved-amount) into cur-saved and
+       summing (getf cur-info :left-amount) into cur-left and
+       summing (if (> (getf nxt-info :left-periods 0) 1)
                    (round (* (saver/payment-amount income)
                              (or (getf cur-info :payment-income-fracture) 0)))
-                   (getf nxt-info :left-amount)) into next-save
+                   (getf nxt-info :left-amount 0)) into next-save
        finally (return
                  (list :cur-saved cur-saved
                        :cur-left cur-left