From: Matthew Jordan Date: Tue, 5 Aug 2014 21:36:25 +0000 (+0000) Subject: test_message: Fix strict-aliasing compilation issue X-Git-Tag: 12.5.0-rc1~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f38ed8b77bee1305572455d823e154e374e05749;p=thirdparty%2Fasterisk.git test_message: Fix strict-aliasing compilation issue git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@420097 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/tests/test_message.c b/tests/test_message.c index 391b01a88f..13e24a8428 100644 --- a/tests/test_message.c +++ b/tests/test_message.c @@ -788,32 +788,28 @@ static int test_init_cb(struct ast_test_info *info, struct ast_test *test) return 0; } -static void free_variable_vector(struct var_vector *vector) -{ - int i; +#define FREE_VARIABLE_VECTOR(vector) do { \ + int i; \ + for (i = 0; i < AST_VECTOR_SIZE(&(vector)); i++) { \ + struct ast_variable *headers; \ + headers = AST_VECTOR_GET(&(vector), i); \ + if (!headers) { \ + continue; \ + } \ + ast_variables_destroy(headers); \ + } \ + AST_VECTOR_FREE(&(vector)); \ + } while (0) - for (i = 0; i < AST_VECTOR_SIZE(vector); i++) { - struct ast_variable *headers; - - headers = AST_VECTOR_GET(vector, i); - if (!headers) { - continue; - } - ast_variables_destroy(headers); - } - - AST_VECTOR_FREE(vector); -} static int test_cleanup_cb(struct ast_test_info *info, struct ast_test *test) { - free_variable_vector((struct var_vector *)&expected_user_event_fields); - free_variable_vector((struct var_vector *)&bad_headers); + FREE_VARIABLE_VECTOR(expected_user_event_fields); + FREE_VARIABLE_VECTOR(bad_headers); return 0; } - static int unload_module(void) { AST_TEST_UNREGISTER(test_message_msg_tech_registration);