tracker r2262 - in branches/indexer-split: . src/libtracker-db src/tracker-indexer
- From: carlosg svn gnome org
- To: svn-commits-list gnome org
- Subject: tracker r2262 - in branches/indexer-split: . src/libtracker-db src/tracker-indexer
- Date: Thu, 25 Sep 2008 10:21:47 +0000 (UTC)
Author: carlosg
Date: Thu Sep 25 10:21:46 2008
New Revision: 2262
URL: http://svn.gnome.org/viewvc/tracker?rev=2262&view=rev
Log:
2008-09-25 Carlos Garnacho <carlos imendio com>
* src/libtracker-db/tracker-db-index.c (tracker_db_index_open): Be
more graceful when the index is already open.
* src/tracker-indexer/tracker-indexer.c (check_started): Reopen the
indexes if needed.
(handle_metadata_add) (handle_metadata_remove): Check that the indexer
is running and fine.
(tracker_indexer_get_running): Check also for the "stopped" flag.
* src/tracker-indexer/tracker-metadata.c (tracker_metadata_insert):
Plug a potential leak.
Modified:
branches/indexer-split/ChangeLog
branches/indexer-split/src/libtracker-db/tracker-db-index.c
branches/indexer-split/src/tracker-indexer/tracker-indexer.c
branches/indexer-split/src/tracker-indexer/tracker-metadata.c
Modified: branches/indexer-split/src/libtracker-db/tracker-db-index.c
==============================================================================
--- branches/indexer-split/src/libtracker-db/tracker-db-index.c (original)
+++ branches/indexer-split/src/libtracker-db/tracker-db-index.c Thu Sep 25 10:21:46 2008
@@ -736,7 +736,10 @@
priv = TRACKER_DB_INDEX_GET_PRIVATE (index);
g_return_val_if_fail (priv->filename != NULL, FALSE);
- g_return_val_if_fail (priv->index == NULL, FALSE);
+
+ if (priv->index) {
+ return TRUE;
+ }
g_debug ("Opening index:'%s' (%s)",
priv->filename,
Modified: branches/indexer-split/src/tracker-indexer/tracker-indexer.c
==============================================================================
--- branches/indexer-split/src/tracker-indexer/tracker-indexer.c (original)
+++ branches/indexer-split/src/tracker-indexer/tracker-indexer.c Thu Sep 25 10:21:46 2008
@@ -617,6 +617,10 @@
g_timer_destroy (indexer->private->timer);
indexer->private->timer = g_timer_new ();
+ /* Open indexes */
+ tracker_db_index_open (indexer->private->file_index);
+ tracker_db_index_open (indexer->private->email_index);
+
g_signal_emit (indexer, signals[STARTED], 0);
}
@@ -1494,6 +1498,8 @@
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
+ check_started (indexer);
+
service = tracker_ontology_get_service_by_name (service_type);
if (!service) {
g_set_error (error,
@@ -1630,6 +1636,8 @@
guint service_id, i;
gchar *joined = NULL, *dirname = NULL, *basename = NULL;
+ check_started (indexer);
+
service = tracker_ontology_get_service_by_name (service_type);
if (!service) {
g_set_error (error,
@@ -2157,7 +2165,8 @@
state = indexer->private->state;
- return (state & TRACKER_INDEXER_STATE_PAUSED) == 0;
+ return ((state & TRACKER_INDEXER_STATE_PAUSED) == 0 &&
+ (state & TRACKER_INDEXER_STATE_STOPPED) == 0);
}
static void
Modified: branches/indexer-split/src/tracker-indexer/tracker-metadata.c
==============================================================================
--- branches/indexer-split/src/tracker-indexer/tracker-metadata.c (original)
+++ branches/indexer-split/src/tracker-indexer/tracker-metadata.c Thu Sep 25 10:21:46 2008
@@ -84,6 +84,7 @@
if (!field) {
g_warning ("Field name '%s' has isn't described in the ontology", field_name);
+ g_free (value);
return;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]