[evolution-data-server] e-test-server-utils: Destroy dynamic closures



commit bf616e204225243cf16e4ca2c3a2a0173cb4d198
Author: Mathias Hasselmann <mathias openismus com>
Date:   Thu Feb 7 18:28:57 2013 +0100

    e-test-server-utils: Destroy dynamic closures
    
    Adds a callback to the closure structure that describes
    its concept of self-destruction.

 tests/test-server-utils/e-test-server-utils.c |    4 ++++
 tests/test-server-utils/e-test-server-utils.h |    3 ++-
 2 files changed, 6 insertions(+), 1 deletions(-)
---
diff --git a/tests/test-server-utils/e-test-server-utils.c b/tests/test-server-utils/e-test-server-utils.c
index 2e54ac4..248a9d8 100644
--- a/tests/test-server-utils/e-test-server-utils.c
+++ b/tests/test-server-utils/e-test-server-utils.c
@@ -336,6 +336,10 @@ e_test_server_utils_teardown (ETestServerFixture *fixture,
 	/* Cleanup work directory */
 	if (!closure->keep_work_directory)
 		delete_work_directory ();
+
+	/* Destroy dynamically allocated closure */
+	if (closure->destroy_closure_func)
+		closure->destroy_closure_func (closure);
 }
 
 gint
diff --git a/tests/test-server-utils/e-test-server-utils.h b/tests/test-server-utils/e-test-server-utils.h
index b5bf840..a1a663a 100644
--- a/tests/test-server-utils/e-test-server-utils.h
+++ b/tests/test-server-utils/e-test-server-utils.h
@@ -88,7 +88,8 @@ struct _ETestServerClosure {
 	ETestServiceType         type;
 	ETestSourceCustomizeFunc customize;
 	gint                     calendar_source_type;
-	gboolean         keep_work_directory;
+	gboolean                 keep_work_directory;
+	GDestroyNotify           destroy_closure_func;
 };
 
 /**


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