summaryrefslogtreecommitdiff
path: root/src/tracker
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2017-06-04 01:22:33 +0200
committerCarlos Garnacho <carlosg@gnome.org>2017-06-29 19:51:47 +0200
commit26441374a30d0fafdcf295d5486c5822dbe7281d (patch)
tree8d441532bb1cbe57dd2a741f5fe8090ae417e6c2 /src/tracker
parent510f742d803d2cb0ffe77ca84fe5648c83e1f799 (diff)
downloadtracker-26441374a30d0fafdcf295d5486c5822dbe7281d.tar.gz
libtracker-data: Require location directories in all internals
cache/journal/ontology dirs are now mandatory in tracker_data_manager_init(), all the upper layers must know what database and ontology they are using.
Diffstat (limited to 'src/tracker')
-rw-r--r--src/tracker/Makefile.am1
-rw-r--r--src/tracker/tracker-reset.c12
-rw-r--r--src/tracker/tracker-sql.c17
3 files changed, 28 insertions, 2 deletions
diff --git a/src/tracker/Makefile.am b/src/tracker/Makefile.am
index 66210b0a8..34eadd825 100644
--- a/src/tracker/Makefile.am
+++ b/src/tracker/Makefile.am
@@ -3,6 +3,7 @@ AM_CPPFLAGS = \
-DLIBEXECDIR=\""$(libexecdir)"\" \
-DLOCALEDIR=\""$(localedir)"\" \
-DMANDIR=\""$(mandir)"\" \
+ -DSHAREDIR=\""$(datadir)"\" \
-DTRACKER_EXTRACTOR_RULES_DIR=\""$(TRACKER_EXTRACT_RULES_DIR)"\" \
-I$(top_srcdir)/src \
-I$(top_builddir)/src \
diff --git a/src/tracker/tracker-reset.c b/src/tracker/tracker-reset.c
index 3eb9de787..243104652 100644
--- a/src/tracker/tracker-reset.c
+++ b/src/tracker/tracker-reset.c
@@ -259,6 +259,8 @@ reset_run (void)
if (hard_reset || soft_reset) {
guint log_handler_id;
+ GFile *cache_location, *data_location;
+ gchar *dir;
#ifndef DISABLE_JOURNAL
gchar *rotate_to;
TrackerDBConfig *db_config;
@@ -266,6 +268,14 @@ reset_run (void)
gint chunk_size_mb;
#endif /* DISABLE_JOURNAL */
+ dir = g_build_filename (g_get_user_cache_dir (), "tracker", NULL);
+ cache_location = g_file_new_for_path (dir);
+ g_free (dir);
+
+ dir = g_build_filename (g_get_user_data_dir (), "tracker", "data", NULL);
+ data_location = g_file_new_for_path (dir);
+ g_free (dir);
+
/* Set log handler for library messages */
log_handler_id = g_log_set_handler (NULL,
G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL,
@@ -292,7 +302,7 @@ reset_run (void)
/* Clean up (select_cache_size and update_cache_size don't matter here) */
if (!tracker_db_manager_init (TRACKER_DB_MANAGER_REMOVE_ALL,
- NULL, NULL, /* cache_location, data_location */
+ cache_location, data_location,
NULL,
FALSE,
FALSE,
diff --git a/src/tracker/tracker-sql.c b/src/tracker/tracker-sql.c
index de0301ee2..05f6c83e9 100644
--- a/src/tracker/tracker-sql.c
+++ b/src/tracker/tracker-sql.c
@@ -96,8 +96,23 @@ sql_by_query (void)
GError *error = NULL;
gboolean first_time = FALSE;
gint n_rows = 0;
+ GFile *cache_location, *data_location, *ontology_location;
+ gchar *dir;
- if (!tracker_data_manager_init (0, NULL, NULL, NULL,
+ dir = g_build_filename (g_get_user_cache_dir (), "tracker", NULL);
+ cache_location = g_file_new_for_path (dir);
+ g_free (dir);
+
+ dir = g_build_filename (g_get_user_data_dir (), "tracker", "data", NULL);
+ data_location = g_file_new_for_path (dir);
+ g_free (dir);
+
+ dir = g_build_filename (SHAREDIR, "tracker", "ontologies", NULL);
+ ontology_location = g_file_new_for_path (dir);
+ g_free (dir);
+
+ if (!tracker_data_manager_init (0, cache_location,
+ data_location, ontology_location,
&first_time,
FALSE,
FALSE,