[tracker] tracker-store: Fix invalid memory access on too large result set



commit 159550a218222e348e829c3c089ef08efb0edf38
Author: Jürg Billeter <j bitron ch>
Date:   Mon Feb 7 14:52:30 2011 +0100

    tracker-store: Fix invalid memory access on too large result set
    
    tracker_dbus_request_end was called twice if D-Bus reply was too large.
    
    Fixes NB#224993.

 src/tracker-store/tracker-resources.vala |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
---
diff --git a/src/tracker-store/tracker-resources.vala b/src/tracker-store/tracker-resources.vala
index e2a7bc4..e482b1e 100644
--- a/src/tracker-store/tracker-resources.vala
+++ b/src/tracker-store/tracker-resources.vala
@@ -99,14 +99,14 @@ public class Tracker.Resources : Object {
 				}
 			}, sender);
 
-			request.end ();
-
 			var result = builder.end ();
 			if (result.get_size () > DBUS_ARBITRARY_MAX_MSG_SIZE) {
 				throw new DBusError.FAILED ("result set of the query is too large");
-			} else {
-				return result;
 			}
+
+			request.end ();
+
+			return result;
 		} catch (Error e) {
 			request.end (e);
 			throw e;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]