diff --git a/glib/gdatetime.c b/glib/gdatetime.c index c7972b445..baf0c5ff7 100644 --- a/glib/gdatetime.c +++ b/glib/gdatetime.c @@ -357,6 +357,8 @@ g_date_time_add_dmy (GDateTime *datetime, gint step, i; const guint16 *max_days; + __year += years; + /* subtract one day for leap years */ if (GREGORIAN_LEAP (__year) && __month == 2) { @@ -364,8 +366,6 @@ g_date_time_add_dmy (GDateTime *datetime, __day -= 1; } - __year += years; - /* add months */ step = months > 0 ? 1 : -1; for (i = 0; i < ABS (months); i++)