Index: modules/luni/src/main/java/java/util/Calendar.java =================================================================== --- modules/luni/src/main/java/java/util/Calendar.java (revision 598188) +++ modules/luni/src/main/java/java/util/Calendar.java (working copy) @@ -725,10 +725,12 @@ * the time as the number of milliseconds since Jan. 1, 1970 */ public void setTimeInMillis(long milliseconds) { - time = milliseconds; + if(!isTimeSet || !areFieldsSet || time!=milliseconds){ + time = milliseconds; isTimeSet = true; areFieldsSet = false; complete(); + } } /** @@ -739,6 +741,7 @@ */ public void setTimeZone(TimeZone timezone) { zone = timezone; + areFieldsSet = false; } /**