diff --git a/src/libtracker-data/tracker-data-update.c b/src/libtracker-data/tracker-data-update.c index eb41b82..9d0a8b6 100644 --- a/src/libtracker-data/tracker-data-update.c +++ b/src/libtracker-data/tracker-data-update.c @@ -1673,7 +1673,8 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error) { TrackerDBInterface *iface; TrackerDBStatement *stmt; - TrackerDBCursor *cursor, *single_cursor, *multi_cursor; + TrackerDBCursor *cursor, *multi_cursor; + TrackerDBResultSet *single_result; TrackerClass *class; GString *sql; TrackerProperty **properties, **property; @@ -1725,13 +1726,13 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error) } } - single_cursor = NULL; + single_result = NULL; if (!first) { g_string_append_printf (sql, " FROM \"%s\" WHERE ID = ?", tracker_class_get_name (class)); stmt = tracker_db_interface_create_statement (iface, "%s", sql->str); tracker_db_statement_bind_int (stmt, 0, resource_id); - single_cursor = tracker_db_statement_start_cursor (stmt, NULL); - tracker_db_cursor_iter_next (single_cursor); + single_result = tracker_db_statement_execute (stmt, NULL); + tracker_db_result_set_iter_next (single_result); g_object_unref (stmt); } @@ -1753,15 +1754,18 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error) } if (!tracker_property_get_multiple_values (*property)) { + gchar *str; + /* single value property, value in single_result_set */ - value = tracker_db_cursor_get_string (single_cursor, i++); + tracker_db_result_set_get (single_result, i++, &str, -1); - if (value) { + if (str) { tracker_data_delete_statement (uri, tracker_property_get_uri (*property), - value, + str, error); + g_free (str); } } else { @@ -1801,7 +1805,7 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error) } if (!first) { - g_object_unref (single_cursor); + g_object_unref (single_result); } }