Index: src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java =================================================================== --- src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java (revision 1524213) +++ src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java (working copy) @@ -103,6 +103,7 @@ return nextTime; } if (frequency == RolloverFrequency.MONTHLY) { + cal.set(Calendar.MONTH, currentCal.get(Calendar.MONTH)); increment(cal, Calendar.MONTH, increment, modulus); nextTime = cal.getTimeInMillis(); cal.add(Calendar.MONTH, -1); @@ -110,6 +111,7 @@ return nextTime; } if (frequency == RolloverFrequency.WEEKLY) { + cal.set(Calendar.WEEK_OF_YEAR, currentCal.get(Calendar.WEEK_OF_YEAR)); increment(cal, Calendar.WEEK_OF_YEAR, increment, modulus); nextTime = cal.getTimeInMillis(); cal.add(Calendar.WEEK_OF_YEAR, -1);