common: Check for valid GDateTime object before comparing
Avoids the critical below at runtime
11:14:36.7796 **[873815]:CRITICAL: cc_util_get_smart_date: assertion 'date != NULL' failed
11:14:36.7802 **[873815]:CRITICAL: cc_util_get_smart_date: assertion 'date != NULL' failed
Which comes from the location panel passing a NULL date object.
\#0 _g_log_abort (breakpoint=1) at ../shell/cc-log.c:72
debugger_present = 1
\#1 0x000000000045c3c4 in cc_log_write
(log_level=10, log_domain=0x7ffff7d592eb "GLib", log_message=0x234c400 "g_date_time_difference: assertion 'begin != NULL' failed", fields=0x7fffffffd740, n_fields=4, user_data=0x0)
at ../shell/cc-log.c:315
log_str = 0x234b8d0
stream = 0x7ffff5dbb4e0 <_IO_2_1_stderr_>
can_color = 1
\#2 0x000000000045c4f5 in cc_log_handler (log_level=G_LOG_LEVEL_CRITICAL, fields=0x7fffffffd740, n_fields=4, user_data=0x0) at ../shell/cc-log.c:348
log_domain = 0x7ffff7d592eb "GLib"
log_message = 0x234c400 "g_date_time_difference: assertion 'begin != NULL' failed"
\#3 0x00007ffff7c9f534 in g_log_structured_array () at /lib64/libglib-2.0.so.0
\#4 0x00007ffff7ca4f57 in g_log_default_handler () at /lib64/libglib-2.0.so.0
\#5 0x00007ffff7c9be29 in g_logv () at /lib64/libglib-2.0.so.0
\#6 0x00007ffff7c9c193 in g_log () at /lib64/libglib-2.0.so.0
\#7 0x00007ffff7c787fa in g_date_time_difference () at /lib64/libglib-2.0.so.0
\#8 0x000000000059c186 in cc_util_get_smart_date (date=0x0) at ../panels/common/cc-util.c:124
today = 0x2350130
local = 0x2350100
span = 10791504
\#9 0x00000000004f8a20 in add_location_app (self=0x1dee1c0, app_id=0x232fef0 "org.gnome.Calendar", enabled=1, last_used=459618461810) at ../panels/privacy/cc-location-page.c:209
data = 0xffffda80
app_info = 0x2341c50
t = 0x0
row = 0x2348280
w = 0x234fe00
icon = 0x2345310
last_used_str = 0x0
desktop_id = 0x7fffcc034c30 "DL\310\375\a"
\#10 0x00000000004f8db4 in update_perm_store (self=0x1dee1c0, permissions=0x7fffcc04e2c0, permissions_data=0x7fffcc04ee80) at ../panels/privacy/cc-location-page.c:282
enabled = 1
last_used = 459618461810
iter = {x = {140736616260288, 2, 0, 6386038, 140736616096608, 36922576, 16, 3579507750, 140737488345904, 140737350561909, 33733184, 36922576, 140737488345936, 140737350702366, 36922576, 3278251457363369984}}
key = 0x232fef0 "org.gnome.Calendar"
value = 0x7fffcc04e090
\#11 0x00000000004f8f4e in on_perm_store_lookup_done (source_object=0x1e24040, res=0x202ba40, user_data=0x1dee1c0) at ../panels/privacy/cc-location-page.c:324
error = 0x0
ret = 0x7fffcc04eef0
permissions = 0x7fffcc04e2c0
permissions_data = 0x7fffcc04ee80
\#12 0x00007ffff7e9082c in g_task_return_now () at /lib64/libgio-2.0.so.0
\#13 0x00007ffff7e944c3 in g_task_return () at /lib64/libgio-2.0.so.0
\#14 0x00007ffff7efe88b in reply_cb () at /lib64/libgio-2.0.so.0
\#15 0x00007ffff7e9082c in g_task_return_now () at /lib64/libgio-2.0.so.0
\#16 0x00007ffff7e944c3 in g_task_return () at /lib64/libgio-2.0.so.0