From b7643ad64a87e6435614041470562abe648b6a79 Mon Sep 17 00:00:00 2001 From: Geert Janssens Date: Fri, 10 Jun 2011 13:31:58 +0000 Subject: [PATCH] Bug #652193 - Upcoming Scheduled Transactions Calendar Starting Month Error Patch by Rich git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20746 57a11ea4-9604-0410-9ed3-97b8803252fd --- src/gnome-utils/gnc-dense-cal.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/gnome-utils/gnc-dense-cal.c b/src/gnome-utils/gnc-dense-cal.c index 337c30d84a..c8b8313fa8 100644 --- a/src/gnome-utils/gnc-dense-cal.c +++ b/src/gnome-utils/gnc-dense-cal.c @@ -1724,6 +1724,7 @@ gdc_add_tag_markings(GncDenseCal *cal, guint tag) gchar *name, *info; gint num_marks, idx; GDate **dates; + GDate *calDate; // copy the values into the old marking function. name = gnc_dense_cal_model_get_name(cal->model, tag); @@ -1734,14 +1735,19 @@ gdc_add_tag_markings(GncDenseCal *cal, guint tag) goto cleanup; dates = g_new0(GDate*, num_marks); + calDate = g_date_new_dmy(1, cal->month, cal->year); + for (idx = 0; idx < num_marks; idx++) { dates[idx] = g_date_new(); gnc_dense_cal_model_get_instance(cal->model, tag, idx, dates[idx]); } - _gnc_dense_cal_set_month(cal, g_date_get_month(dates[0]), FALSE); - _gnc_dense_cal_set_year(cal, g_date_get_year(dates[0]), FALSE); + if(g_date_get_julian(dates[0]) < g_date_get_julian(calDate)) + { + _gnc_dense_cal_set_month(cal, g_date_get_month(dates[0]), FALSE); + _gnc_dense_cal_set_year(cal, g_date_get_year(dates[0]), FALSE); + } gdc_mark_add(cal, tag, name, info, num_marks, dates); @@ -1750,7 +1756,8 @@ gdc_add_tag_markings(GncDenseCal *cal, guint tag) g_date_free(dates[idx]); } g_free(dates); - + g_date_free(calDate); + cleanup: g_free(info); }