From ad404c26ed22690d842a01df3e10a851a198a0b7 Mon Sep 17 00:00:00 2001
From: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Date: Wed, 15 Nov 2017 13:09:54 -0800
Subject: [PATCH] utils: simplify gcal_dup_icaltime

Instead of copying member by member, copy the entire struct contents.
It works as before, but doesn't depend on the member names.

This fixes compiling gnome-calendar with libical 3.0.0, since the
struct icaltimetype had one of the members removed (is_utc).

https://bugzilla.gnome.org/show_bug.cgi?id=790072
---
 src/gcal-utils.c | 19 +------------------
 1 file changed, 1 insertion(+), 18 deletions(-)

diff --git a/src/gcal-utils.c b/src/gcal-utils.c
index c80ba53a..4558f540 100644
--- src/gcal-utils.c
+++ src/gcal-utils.c
@@ -199,24 +199,7 @@ datetime_is_date (GDateTime *dt)
 icaltimetype*
 gcal_dup_icaltime (const icaltimetype *date)
 {
-  icaltimetype *new_date;
-
-  if (date == NULL)
-    return NULL;
-
-  new_date= g_new (icaltimetype, 1);
-  new_date->year = date->year;
-  new_date->month = date->month;
-  new_date->day = date->day;
-  new_date->hour = date->hour;
-  new_date->minute = date->minute;
-  new_date->second = date->second;
-  new_date->is_utc = date->is_utc;
-  new_date->is_date = date->is_date;
-  new_date->is_daylight = date->is_daylight;
-  new_date->zone = date->zone;
-
-  return new_date;
+  return g_memdup (date, sizeof (icaltimetype));
 }
 
 /**
-- 
2.22.0