summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSeif Lotfy <seif@lotfy.com>2013-04-06 20:41:54 +0200
committerSeif Lotfy <seif@lotfy.com>2013-04-06 20:41:54 +0200
commitb49b542de2640c37ac9099fdfe2f41000404c734 (patch)
treeddb8a730f5befe38f4382ca0403b6e575d69651a
parent4592361a265315cf1ee156c7ee7f7105b6757b41 (diff)
downloadzeitgeist-b49b542de2640c37ac9099fdfe2f41000404c734.tar.gz
Use copies of event_templates to pass to threads
Fix insert_event(s)_no_reply to ignore returning values
-rw-r--r--libzeitgeist/log.vala46
1 files changed, 24 insertions, 22 deletions
diff --git a/libzeitgeist/log.vala b/libzeitgeist/log.vala
index cc4b116f..b2002057 100644
--- a/libzeitgeist/log.vala
+++ b/libzeitgeist/log.vala
@@ -219,10 +219,10 @@ public class Log : QueuedProxyWrapper
*
* @param event A {@link Event}
*/
- public async void insert_event_no_reply (Event event)
+ public void insert_event_no_reply (Event event)
throws Error
{
- yield insert_event (event);
+ insert_event (event);
}
/**
@@ -236,10 +236,10 @@ public class Log : QueuedProxyWrapper
*
* @param events An {@link GLib.GenericArray} of {@link Event}
*/
- public async void insert_events_no_reply (GenericArray<Event> events)
+ public void insert_events_no_reply (GenericArray<Event> events)
throws Error
{
- yield insert_events (events);
+ insert_events (events);
}
/**
@@ -274,12 +274,16 @@ public class Log : QueuedProxyWrapper
ResultType result_type,
Cancellable? cancellable=null) throws Error
{
+ var event_templates_cp = new GenericArray<Event> ();
+ for (int i = 0; i < event_templates.length; i++)
+ event_templates_cp.add (event_templates.get (i));
+
if (dbreader != null) {
SimpleResultSet result_set = null;
EngineError error = null;
ThreadFunc<void*> run = () => {
try {
- var result = dbreader.find_events (time_range, event_templates,
+ var result = dbreader.find_events (time_range, event_templates_cp,
storage_state, num_events, result_type);
result_set = new SimpleResultSet (result);
} catch (EngineError err) {
@@ -298,9 +302,6 @@ public class Log : QueuedProxyWrapper
return result_set;
}
- var event_templates_cp = new GenericArray<Event> ();
- for (int i = 0; i < event_templates.length; i++)
- event_templates_cp.add (event_templates.get (i));
yield wait_for_proxy ();
var result = yield proxy.find_events (time_range.to_variant (),
Events.to_variant (event_templates_cp), storage_state,
@@ -337,12 +338,16 @@ public class Log : QueuedProxyWrapper
ResultType result_type,
Cancellable? cancellable=null) throws Error
{
+ var event_templates_cp = new GenericArray<Event> ();
+ for (int i = 0; i < event_templates.length; i++)
+ event_templates_cp.add(event_templates.get (i));
+
if (dbreader != null) {
uint32[] ids = null;
EngineError error = null;
ThreadFunc<void*> run = () => {
try {
- ids = dbreader.find_event_ids (time_range, event_templates,
+ ids = dbreader.find_event_ids (time_range, event_templates_cp,
storage_state, num_events, result_type);
} catch (EngineError err) {
error = err;
@@ -360,9 +365,6 @@ public class Log : QueuedProxyWrapper
return ids;
}
- var event_templates_cp = new GenericArray<Event> ();
- for (int i = 0; i < event_templates.length; i++)
- event_templates_cp.add(event_templates.get (i));
yield wait_for_proxy ();
return yield proxy.find_event_ids (time_range.to_variant (),
Events.to_variant (event_templates_cp), storage_state,
@@ -446,13 +448,21 @@ public class Log : QueuedProxyWrapper
ResultType result_type,
Cancellable? cancellable=null) throws Error
{
+ var events_cp = new GenericArray<Event> ();
+ for (int i = 0; i < event_templates.length; i++)
+ events_cp.add (event_templates.get (i));
+
+ var results_cp = new GenericArray<Event> ();
+ for (int i = 0; i < result_event_templates.length; i++)
+ results_cp.add (result_event_templates.get (i));
+
if (dbreader != null) {
string[] uris = null;
EngineError error = null;
ThreadFunc<void*> run = () => {
try {
- uris = dbreader.find_related_uris (time_range, event_templates,
- result_event_templates, storage_state, num_events, result_type);
+ uris = dbreader.find_related_uris (time_range, events_cp,
+ results_cp, storage_state, num_events, result_type);
} catch (EngineError err) {
error = err;
} finally {
@@ -469,14 +479,6 @@ public class Log : QueuedProxyWrapper
return uris;
}
- var events_cp = new GenericArray<Event> ();
- for (int i = 0; i < event_templates.length; i++)
- events_cp.add (event_templates.get (i));
-
- var results_cp = new GenericArray<Event> ();
- for (int i = 0; i < result_event_templates.length; i++)
- results_cp.add (result_event_templates.get (i));
-
yield wait_for_proxy ();
return yield proxy.find_related_uris (time_range.to_variant (),
Events.to_variant (events_cp),