85 lines
2.8 KiB
Diff
85 lines
2.8 KiB
Diff
From b99761d50f9f0c2bac63e5a9844deda4761b50d7 Mon Sep 17 00:00:00 2001
|
|
From: Ting-Wei Lan <lantw@src.gnome.org>
|
|
Date: Sat, 22 Sep 2018 14:51:42 +0800
|
|
Subject: [PATCH] symbol-db: Fix build with the current libgda master branch
|
|
|
|
GdaTimestamp has been removed and replaced by GDateTime. The version
|
|
number went back to 5.90 and bumped to 5.91 on the libgda master branch.
|
|
---
|
|
configure.ac | 2 +-
|
|
plugins/symbol-db/symbol-db-engine-core.c | 21 +++++++++++++++++++++
|
|
2 files changed, 22 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/configure.ac b/configure.ac
|
|
index cc81229e6..f1345dda4 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -37,7 +37,7 @@ GTHREAD_REQUIRED=2.22.0
|
|
GDK_PIXBUF_REQUIRED=2.0.0
|
|
GDA4_REQUIRED=4.2.0
|
|
GDA5_REQUIRED=5.0.0
|
|
-GDA6_REQUIRED=5.99.0
|
|
+GDA6_REQUIRED=5.90.0
|
|
LIBXML_REQUIRED=2.4.23
|
|
GDL_REQUIRED=3.5.5
|
|
LIBWNCK_REQUIRED=2.12
|
|
diff --git a/plugins/symbol-db/symbol-db-engine-core.c b/plugins/symbol-db/symbol-db-engine-core.c
|
|
index 37d6e048a..c3f0d4f55 100644
|
|
--- a/plugins/symbol-db/symbol-db-engine-core.c
|
|
+++ b/plugins/symbol-db/symbol-db-engine-core.c
|
|
@@ -5443,7 +5443,11 @@ symbol_db_engine_update_project_symbols (SymbolDBEngine *dbe,
|
|
G_TYPE_STRING,
|
|
G_TYPE_INT,
|
|
G_TYPE_INT,
|
|
+#ifdef HAVE_GDA6
|
|
+ G_TYPE_DATE_TIME,
|
|
+#else
|
|
GDA_TYPE_TIMESTAMP,
|
|
+#endif
|
|
G_TYPE_NONE
|
|
};
|
|
data_model = gda_connection_statement_execute_select_full (priv->db_connection,
|
|
@@ -5473,7 +5477,11 @@ symbol_db_engine_update_project_symbols (SymbolDBEngine *dbe,
|
|
for (i = 0; i < num_rows; i++)
|
|
{
|
|
const GValue *value, *value1;
|
|
+#ifdef HAVE_GDA6
|
|
+ GDateTime *timestamp;
|
|
+#else
|
|
const GdaTimestamp *timestamp;
|
|
+#endif
|
|
const gchar *file_name;
|
|
gchar *file_abs_path = NULL;
|
|
struct tm filetm;
|
|
@@ -5530,17 +5538,30 @@ symbol_db_engine_update_project_symbols (SymbolDBEngine *dbe,
|
|
}
|
|
|
|
|
|
+#ifdef HAVE_GDA6
|
|
+ timestamp = g_value_get_boxed (value1);
|
|
+#else
|
|
timestamp = gda_value_get_timestamp (value1);
|
|
+#endif
|
|
|
|
/* fill a struct tm with the date retrieved by the string. */
|
|
/* string is something like '2007-04-18 23:51:39' */
|
|
memset (&filetm, 0, sizeof (struct tm));
|
|
+#ifdef HAVE_GDA6
|
|
+ filetm.tm_year = g_date_time_get_year (timestamp) - 1900;
|
|
+ filetm.tm_mon = g_date_time_get_month (timestamp) - 1;
|
|
+ filetm.tm_mday = g_date_time_get_day_of_month (timestamp);
|
|
+ filetm.tm_hour = g_date_time_get_hour (timestamp);
|
|
+ filetm.tm_min = g_date_time_get_minute (timestamp);
|
|
+ filetm.tm_sec = g_date_time_get_second (timestamp);
|
|
+#else
|
|
filetm.tm_year = timestamp->year - 1900;
|
|
filetm.tm_mon = timestamp->month - 1;
|
|
filetm.tm_mday = timestamp->day;
|
|
filetm.tm_hour = timestamp->hour;
|
|
filetm.tm_min = timestamp->minute;
|
|
filetm.tm_sec = timestamp->second;
|
|
+#endif
|
|
|
|
/* remove one hour to the db_file_time. */
|
|
db_time = mktime (&filetm) - 3600;
|