Fix wrong month numeration
[idea/community.git] / plugins / stats-collector / src / com / intellij / stats / personalization / impl / DayImpl.kt
index 7c6cd734dad9b740e2bec60ac62027ff72c73cb0..89ffc49dd19bdcb471eb278168e9a4ae0fd02e32 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2017 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 package com.intellij.stats.personalization.impl
 
 import com.intellij.stats.personalization.Day
@@ -28,13 +44,15 @@ class DayImpl(date: Date) : Day {
         val calendar = Calendar.getInstance()
         calendar.time = date
         dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH)
-        month = calendar.get(Calendar.MONTH)
+        // a month is a zero-based property for some reason
+        // see details: https://stackoverflow.com/questions/344380/why-is-january-month-0-in-java-calendar
+        month = calendar.get(Calendar.MONTH) + 1
         year = calendar.get(Calendar.YEAR)
     }
 
     override fun compareTo(other: Day): Int {
-        if (year == year) {
-            if (month == month) {
+        if (year == other.year) {
+            if (month == other.month) {
                 return dayOfMonth.compareTo(other.dayOfMonth)
             }
             return month.compareTo(other.month)