Release v2.7.90
[platform/core/uifw/at-spi2-atk.git] / atk-adaptor / accessible-leasing.c
index 63f3c3a..dcddb0b 100644 (file)
@@ -72,7 +72,9 @@ spi_leasing_finalize (GObject * object)
 {
   SpiLeasing *leasing = SPI_LEASING (object);
 
-  g_free (leasing->expiry_queue);
+  if (leasing->expiry_func_id)
+    g_source_remove (leasing->expiry_func_id);
+  g_queue_free (leasing->expiry_queue);
   G_OBJECT_CLASS (spi_leasing_parent_class)->finalize (object);
 }
 
@@ -82,7 +84,7 @@ spi_leasing_dispose (GObject * object)
   SpiLeasing *leasing = SPI_LEASING (object);
 
   ExpiryElement *head;
-  while (head = g_queue_pop_head (leasing->expiry_queue))
+  while ((head = g_queue_pop_head (leasing->expiry_queue)))
     {
       g_object_unref (head->object);
       g_slice_free (ExpiryElement, head);
@@ -172,7 +174,7 @@ add_expiry_timeout (SpiLeasing * leasing)
   The lease time is going to be rounded up, as the lease time should be
   considered a MINIMUM that the object will be leased for.
 */
-#define LEASE_TIME_S 3
+#define LEASE_TIME_S 15
 #define EXPIRY_TIME_S (LEASE_TIME_S + 1)
 
 GObject *