desktop-data-model r7279 - trunk/ddm
- From: otaylor svn gnome org
- To: svn-commits-list gnome org
- Subject: desktop-data-model r7279 - trunk/ddm
- Date: Wed, 23 Apr 2008 19:09:16 +0100 (BST)
Author: otaylor
Date: Wed Apr 23 18:09:16 2008
New Revision: 7279
URL: http://svn.gnome.org/viewvc/desktop-data-model?rev=7279&view=rev
Log:
Fix problem where when we received an error reply, we wouldn't
schedule a new flush, so we might never do follow-up processing
(like sending the query-reply on a multi-part fetch.)
Modified:
trunk/ddm/ddm-data-model.c
Modified: trunk/ddm/ddm-data-model.c
==============================================================================
--- trunk/ddm/ddm-data-model.c (original)
+++ trunk/ddm/ddm-data-model.c Wed Apr 23 18:09:16 2008
@@ -1016,6 +1016,18 @@
DDMDataQuery *query)
{
gint64 serial = _ddm_data_query_get_serial(query);
+
+ /* There may be waiting work items that are satisfied because this query is now answered.
+ */
+ if (model->work_items->length > 0) {
+ gint64 waiting_serial = _ddm_work_item_get_min_serial(model->work_items->head->data);
+ if (waiting_serial > model->max_answered_query_serial && waiting_serial <= serial) {
+ g_debug("Scheduling flush because waiting work item satisfied by %s",
+ ddm_data_query_get_id_string(query));
+ ddm_data_model_schedule_flush(model);
+ }
+ }
+
if (serial > model->max_answered_query_serial)
model->max_answered_query_serial = serial;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]