File kdepimlibs-4.14.10-ical-3-fixes.patch of Package mingw64-kdepimlibs4

diff -ur kdepimlibs-4.14.10.orig/kcal/icalformat_p.cpp kdepimlibs-4.14.10/kcal/icalformat_p.cpp
--- kdepimlibs-4.14.10.orig/kcal/icalformat_p.cpp	2015-06-24 14:43:14.000000000 +0200
+++ kdepimlibs-4.14.10/kcal/icalformat_p.cpp	2024-10-06 15:03:04.077770346 +0200
@@ -2087,7 +2087,6 @@
   t.second = 0;
 
   t.is_date = 1;
-  t.is_utc = 0;
   t.zone = 0;
 
   return t;
@@ -2106,8 +2105,7 @@
   t.second = datetime.time().second();
 
   t.is_date = 0;
-  t.zone = 0;   // zone is NOT set
-  t.is_utc = datetime.isUtc() ? 1 : 0;
+  t.zone = datetime.isUtc() ? icaltimezone_get_utc_timezone() : NULL;
 
   // _dumpIcaltime( t );
 
@@ -2174,7 +2172,7 @@
   }
 
   KTimeZone ktz;
-  if ( !t.is_utc ) {
+  if ( !icaltime_is_utc(t) ) {
     ktz = dt.timeZone();
   }
 
@@ -2207,7 +2205,7 @@
 //  _dumpIcaltime( t );
 
   KDateTime::Spec timeSpec;
-  if ( t.is_utc  ||  t.zone == icaltimezone_get_utc_timezone() ) {
+  if ( icaltime_is_utc(t) ) {
     timeSpec = KDateTime::UTC;   // the time zone is UTC
     utc = false;    // no need to convert to UTC
   } else {
diff -ur kdepimlibs-4.14.10.orig/kcal/icaltimezones.cpp kdepimlibs-4.14.10/kcal/icaltimezones.cpp
--- kdepimlibs-4.14.10.orig/kcal/icaltimezones.cpp	2015-06-24 14:43:14.000000000 +0200
+++ kdepimlibs-4.14.10/kcal/icaltimezones.cpp	2024-10-06 15:12:36.110165970 +0200
@@ -50,7 +50,7 @@
 {
   return QDateTime( QDate( t.year, t.month, t.day ),
                     QTime( t.hour, t.minute, t.second ),
-                    ( t.is_utc ? Qt::UTC : Qt::LocalTime ) );
+                    ( icaltime_is_utc(t) ? Qt::UTC : Qt::LocalTime ) );
 }
 
 // Maximum date for time zone data.
@@ -76,8 +76,7 @@
   t.minute = local.time().minute();
   t.second = local.time().second();
   t.is_date = 0;
-  t.zone = 0;
-  t.is_utc = 0;
+  t.zone = NULL;
   return t;
 }
 
@@ -787,7 +786,7 @@
     case ICAL_LASTMODIFIED_PROPERTY:
     {
       icaltimetype t = icalproperty_get_lastmodified(p);
-      if ( t.is_utc ) {
+      if ( icaltime_is_utc(t) ) {
         data->d->lastModified = toQDateTime( t );
       } else {
         kDebug() << "LAST-MODIFIED not UTC";
@@ -972,7 +971,7 @@
   // Convert DTSTART to QDateTime, and from local time to UTC
   QDateTime localStart = toQDateTime( dtstart );   // local time
   dtstart.second -= prevOffset;
-  dtstart.is_utc = 1;
+  dtstart.zone = icaltimezone_get_utc_timezone();
   QDateTime utcStart = toQDateTime( icaltime_normalize( dtstart ) );   // UTC
 
   transitions += utcStart;
@@ -999,13 +998,13 @@
           t.minute = dtstart.minute;
           t.second = dtstart.second;
           t.is_date = 0;
-          t.is_utc = 0;    // dtstart is in local time
+          t.zone = NULL;    // dtstart is in local time
         }
         // RFC2445 states that RDATE must be in local time,
         // but we support UTC as well to be safe.
-        if ( !t.is_utc ) {
+        if ( !icaltime_is_utc(t) ) {
           t.second -= prevOffset;    // convert to UTC
-          t.is_utc = 1;
+          t.zone = icaltimezone_get_utc_timezone();
           t = icaltime_normalize( t );
         }
         transitions += toQDateTime( t );
diff -ur kdepimlibs-4.14.10.orig/kcalcore/icalformat_p.cpp kdepimlibs-4.14.10/kcalcore/icalformat_p.cpp
--- kdepimlibs-4.14.10.orig/kcalcore/icalformat_p.cpp	2015-06-24 14:43:14.000000000 +0200
+++ kdepimlibs-4.14.10/kcalcore/icalformat_p.cpp	2024-10-06 15:07:27.171091727 +0200
@@ -2301,7 +2301,6 @@
     t.second = 0;
 
     t.is_date = 1;
-    t.is_utc = 0;
     t.zone = 0;
 
     return t;
@@ -2322,8 +2321,7 @@
         t.minute = datetime.time().minute();
         t.second = datetime.time().second();
     }
-    t.zone = 0;   // zone is NOT set
-    t.is_utc = datetime.isUtc() ? 1 : 0;
+    t.zone = datetime.isUtc() ? icaltimezone_get_utc_timezone() : NULL;
 
     // _dumpIcaltime( t );
 
@@ -2398,7 +2396,7 @@
     }
 
     KTimeZone ktz;
-    if (!t.is_utc) {
+    if ( !icaltime_is_utc(t) ) {
         ktz = dt.timeZone();
     }
 
@@ -2431,7 +2429,7 @@
 //  _dumpIcaltime( t );
 
     KDateTime::Spec timeSpec;
-    if (t.is_utc  ||  t.zone == icaltimezone_get_utc_timezone()) {
+    if ( icaltime_is_utc(t) ) {
         timeSpec = KDateTime::UTC;   // the time zone is UTC
         utc = false;    // no need to convert to UTC
     } else {
diff -ur kdepimlibs-4.14.10.orig/kcalcore/icaltimezones.cpp kdepimlibs-4.14.10/kcalcore/icaltimezones.cpp
--- kdepimlibs-4.14.10.orig/kcalcore/icaltimezones.cpp	2015-06-24 14:43:14.000000000 +0200
+++ kdepimlibs-4.14.10/kcalcore/icaltimezones.cpp	2024-10-06 15:12:10.723551609 +0200
@@ -54,7 +54,7 @@
 {
     return QDateTime(QDate(t.year, t.month, t.day),
                      QTime(t.hour, t.minute, t.second),
-                     (t.is_utc ? Qt::UTC : Qt::LocalTime));
+                     (icaltime_is_utc(t) ? Qt::UTC : Qt::LocalTime));
 }
 
 // Maximum date for time zone data.
@@ -81,7 +81,6 @@
     t.second = local.time().second();
     t.is_date = 0;
     t.zone = 0;
-    t.is_utc = 0;
     return t;
 }
 
@@ -886,7 +885,7 @@
         case ICAL_LASTMODIFIED_PROPERTY:
         {
             const icaltimetype t = icalproperty_get_lastmodified(p);
-            if (t.is_utc) {
+            if (icaltime_is_utc(t)) {
                 data->d->lastModified = toQDateTime(t);
             } else {
                 kDebug() << "LAST-MODIFIED not UTC";
@@ -1259,7 +1258,7 @@
     // Convert DTSTART to QDateTime, and from local time to UTC
     const QDateTime localStart = toQDateTime(dtstart);     // local time
     dtstart.second -= prevOffset;
-    dtstart.is_utc = 1;
+    dtstart.zone = icaltimezone_get_utc_timezone();
     const QDateTime utcStart = toQDateTime(icaltime_normalize(dtstart));       // UTC
 
     transitions += utcStart;
@@ -1286,13 +1285,13 @@
                     t.minute = dtstart.minute;
                     t.second = dtstart.second;
                     t.is_date = 0;
-                    t.is_utc = 0;    // dtstart is in local time
+                    t.zone = NULL;    // dtstart is in local time
                 }
                 // RFC2445 states that RDATE must be in local time,
                 // but we support UTC as well to be safe.
-                if (!t.is_utc) {
+                if (!icaltime_is_utc(t)) {
                     t.second -= prevOffset;    // convert to UTC
-                    t.is_utc = 1;
+                    t.zone = icaltimezone_get_utc_timezone();
                     t = icaltime_normalize(t);
                 }
                 transitions += toQDateTime(t);
openSUSE Build Service is sponsored by