From 44d9fa2385d9afe17a163bb28d519722abef0d65 Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Mon, 21 Aug 2017 14:12:29 +0200
Subject: [PATCH] Fixed #157 - repeating payment entries are not isnerted for
 future months

---
 .../server/updater/RepeatingPaymentUpdater.java      | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/de/deadlocker8/budgetmasterserver/server/updater/RepeatingPaymentUpdater.java b/src/de/deadlocker8/budgetmasterserver/server/updater/RepeatingPaymentUpdater.java
index 2e8be2278..c43cd7cae 100644
--- a/src/de/deadlocker8/budgetmasterserver/server/updater/RepeatingPaymentUpdater.java
+++ b/src/de/deadlocker8/budgetmasterserver/server/updater/RepeatingPaymentUpdater.java
@@ -24,22 +24,24 @@ public class RepeatingPaymentUpdater
 	public void updateRepeatingPayments(DateTime now)
 	{
 		try
-		{						
+		{
 			ArrayList<RepeatingPayment> repeatingPayments = handler.getAllRepeatingPayments();				
 			ArrayList<LatestRepeatingPayment> latest = handler.getLatestRepeatingPaymentEntries();
 			
 			for(RepeatingPayment currentPayment : repeatingPayments)
 			{
+				DateTime date = now;
 				int index = latest.indexOf(currentPayment);					
 				if(currentPayment.getRepeatEndDate() != null)
 				{
 					DateTime endDate = DateTime.parse(currentPayment.getRepeatEndDate());
-					if(endDate.isBefore(now))
-					{
-						now = endDate;
+					if(endDate.isBefore(date))
+					{						
+						date = endDate;
 					}
 				}
-				ArrayList<DateTime> correctDates = getCorrectRepeatingDates(currentPayment, now);				
+				ArrayList<DateTime> correctDates = getCorrectRepeatingDates(currentPayment, date);
+				
 				if(index != -1)
 				{
 					LatestRepeatingPayment currentLatest = latest.get(index);					
-- 
GitLab