From bf616e204225243cf16e4ca2c3a2a0173cb4d198 Mon Sep 17 00:00:00 2001 From: Mathias Hasselmann Date: Thu, 7 Feb 2013 18:28:57 +0100 Subject: [PATCH] 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 deletion(-) 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; }; /** -- 2.7.4