[tracker/tracker-0.6] Fixes NB#118212, glib warnings when running trackerd
- From: Ivan Frade <ifrade src gnome org>
- To: svn-commits-list gnome org
- Subject: [tracker/tracker-0.6] Fixes NB#118212, glib warnings when running trackerd
- Date: Fri, 22 May 2009 15:25:48 -0400 (EDT)
commit b55139afe372cd6a764d8464ff6ccbdf6fd9bb5f
Author: Ivan Frade <ivan frade nokia com>
Date: Fri May 22 22:22:29 2009 +0300
Fixes NB#118212, glib warnings when running trackerd
Handling correctly the error in tracker_metadata_get/_get_multiple.
The internal common function (_get_internal) set the GError, and the
public functions handle correctly the error (and log it).
---
src/trackerd/tracker-metadata.c | 51 ++++++++++++++++++++++++--------------
1 files changed, 32 insertions(+), 19 deletions(-)
diff --git a/src/trackerd/tracker-metadata.c b/src/trackerd/tracker-metadata.c
index 06872f4..c501ec7 100644
--- a/src/trackerd/tracker-metadata.c
+++ b/src/trackerd/tracker-metadata.c
@@ -82,30 +82,33 @@ tracker_metadata_get_internal (TrackerMetadata *object,
gchar **values;
if (!tracker_ontology_service_is_valid (service_type)) {
- tracker_dbus_request_failed (request_id,
- error,
- "Service '%s' is invalid or has not been implemented yet",
- service_type);
+ g_set_error (error,
+ TRACKER_DBUS_ERROR,
+ 0,
+ "Service '%s' is invalid or has not been implemented yet",
+ service_type);
return NULL;
}
service_id = tracker_data_query_file_id (service_type, uri);
if (service_id <= 0) {
- tracker_dbus_request_failed (request_id,
- error,
- "Service URI '%s' not found",
- uri);
+ g_set_error (error,
+ TRACKER_DBUS_ERROR,
+ 0,
+ "Service URI '%s' not found",
+ uri);
return NULL;
}
/* Checking keys */
for (i = 0; i < g_strv_length (keys); i++) {
if (tracker_ontology_get_field_by_name (keys[i]) == NULL) {
- tracker_dbus_request_failed (request_id,
- error,
- "Metadata field '%s' not registered in the system",
- keys[i]);
+ g_set_error (error,
+ TRACKER_DBUS_ERROR,
+ 0,
+ "Metadata field '%s' not registered in the system",
+ keys[i]);
return NULL;
}
}
@@ -116,10 +119,11 @@ tracker_metadata_get_internal (TrackerMetadata *object,
/* Check we have a file in the database before looking up the metadata. */
service_result = tracker_data_query_service_type_by_id (iface, service_id);
if (!service_result) {
- tracker_dbus_request_failed (request_id,
- error,
- "Service type can not be found for entity '%s'",
- uri);
+ g_set_error (error,
+ TRACKER_DBUS_ERROR,
+ 0,
+ "Service type can not be found for entity '%s'",
+ uri);
return NULL;
}
@@ -135,9 +139,10 @@ tracker_metadata_get_internal (TrackerMetadata *object,
}
if (!values) {
- tracker_dbus_request_failed (request_id,
- error,
- "No metadata information was available");
+ g_set_error (error,
+ TRACKER_DBUS_ERROR,
+ 0,
+ "No metadata information was available");
return NULL;
}
@@ -176,6 +181,9 @@ tracker_metadata_get (TrackerMetadata *object,
&actual_error);
if (!values) {
+ tracker_dbus_request_failed (request_id,
+ &actual_error,
+ NULL);
dbus_g_method_return_error (context, actual_error);
g_error_free (actual_error);
return;
@@ -229,6 +237,11 @@ tracker_metadata_get_multiple (TrackerMetadata *object,
uris[i],
keys,
&actual_error);
+ if (!strv) {
+ g_debug ("%s", actual_error->message);
+ g_error_free (actual_error);
+ actual_error = NULL;
+ }
/* Don't allow errors, but allow NULLs */
g_ptr_array_add (values, strv);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]