diff --git a/sefht.geany b/sefht.geany
index 9e86ec7eb3a8718f1d03160042f3ea71e0a9e233..387a93e0521cbf25679afc9308f3dee5ee486adb 100644
--- a/sefht.geany
+++ b/sefht.geany
@@ -28,7 +28,7 @@ long_line_behaviour=1
 long_line_column=72
 
 [files]
-current_page=10
+current_page=19
 FILE_NAME_0=923;Sh;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fconfigure.ac;0;8
 FILE_NAME_1=73;Make;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2FMakefile.am;0;8
 FILE_NAME_2=1143;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Fmain.c;0;8
@@ -49,16 +49,16 @@ FILE_NAME_16=1779;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fp
 FILE_NAME_17=851;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Fvalidator.h;0;8
 FILE_NAME_18=14237;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Fvalidator_tag.c;0;8
 FILE_NAME_19=859;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Fvalidator_tag.h;0;8
-FILE_NAME_20=852;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Fstatus.h;0;8
+FILE_NAME_20=4600;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Fstatus.h;0;8
 FILE_NAME_21=839;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Flog.h;0;4
 FILE_NAME_22=1070;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Fmacro.h;0;8
 FILE_NAME_23=1106;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Fsrc%2Flib%2Fsefht%2Fsefht.h;0;8
 FILE_NAME_24=499;Make;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2FMakefile.am;0;8
-FILE_NAME_25=1510;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_cms.c;0;8
-FILE_NAME_26=3878;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_data.c;0;8
-FILE_NAME_27=14714;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_node_fragment.c;0;8
-FILE_NAME_28=976;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_text.c;0;8
-FILE_NAME_29=6814;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_validator.c;0;8
+FILE_NAME_25=1085;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_cms.c;0;8
+FILE_NAME_26=3283;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_data.c;0;8
+FILE_NAME_27=13617;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_node_fragment.c;0;8
+FILE_NAME_28=11068;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_text.c;0;8
+FILE_NAME_29=5744;C;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftests%2Ftest_validator.c;0;8
 FILE_NAME_30=165;None;0;EUTF-8;1;1;0;%2Fhome%2Fjonathan%2FDokumente%2Fprojekte%2Fprgm%2Finternet%2Fweb%2FSeFHT%2Ftodo.txt;0;8
 
 [VTE]
diff --git a/src/lib/sefht/status.h b/src/lib/sefht/status.h
index 8debe4c23a93deba81158c917fda22114b005c77..00d828913a3ba20ff06db1b91daa6c1dce89bb43 100644
--- a/src/lib/sefht/status.h
+++ b/src/lib/sefht/status.h
@@ -38,29 +38,29 @@
 #ifdef LIB_SEFHT_COMPILATION
 
 #define succeed(STATUS)                                                \
-	((STATUS != NULL) && (STATUS->status == SUCCESS))
+	(((STATUS) != NULL) && ((STATUS)->status == SUCCESS))
 
 #define failed(STATUS)                                                 \
-	((STATUS != NULL) && (STATUS->status != SUCCESS))
+	(((STATUS) != NULL) && ((STATUS)->status != SUCCESS))
 
-#define unknown(STATUS) (STATUS == NULL)
+#define unknown(STATUS) ((STATUS) == NULL)
 
 #define set_status(STATUS, ERROR, OFFSET, MESSAGE)                     \
 do                                                                     \
 {                                                                      \
-	if (STATUS != NULL)                                            \
+	if ((STATUS) != NULL)                                          \
 	{                                                              \
-		STATUS->status = ERROR;                                \
-		STATUS->errno_ = (ERROR == SUCCESS) ? 0: errno;        \
-		STATUS->file = __FILE__;                               \
-		STATUS->function = __FUNCTION__;                       \
-		STATUS->line = (unsigned long) (__LINE__ - OFFSET);    \
-		STATUS->message = MESSAGE;                             \
+		(STATUS)->status = (ERROR);                            \
+		(STATUS)->errno_ = ((ERROR) == SUCCESS) ? 0: errno;    \
+		(STATUS)->file = (__FILE__);                           \
+		(STATUS)->function = (__FUNCTION__);                   \
+		(STATUS)->line = (unsigned long) ((__LINE__)-(OFFSET));\
+		(STATUS)->message = (MESSAGE);                         \
 	};                                                             \
                                                                        \
-	if (MESSAGE != NULL)                                           \
+	if ((MESSAGE) != NULL)                                         \
 	{                                                              \
-		ERROR1 (MESSAGE);                                      \
+		ERROR1 ((MESSAGE));                                    \
 	}                                                              \
 }                                                                      \
 while (FALSE)
@@ -68,29 +68,38 @@ while (FALSE)
 #define set_status_(STATUS, ERROR, OFFSET, LENGTH, MESSAGE, ...)       \
 do                                                                     \
 {                                                                      \
-	if (STATUS != NULL)                                            \
+	if ((STATUS) != NULL)                                          \
 	{                                                              \
-		STATUS->status = ERROR;                                \
-		STATUS->errno_ = (ERROR == SUCCESS) ? 0: errno;        \
-		STATUS->file = __FILE__;                               \
-		STATUS->function = __FUNCTION__;                       \
-		STATUS->line = (unsigned long) (__LINE__ - OFFSET);      \
-		STATUS->message = malloc (strlen(MESSAGE)+1 + LENGTH); \
-		if (STATUS->message == NULL)                           \
+		(STATUS)->status = (ERROR);                            \
+		(STATUS)->errno_ = ((ERROR) == SUCCESS) ? 0: errno;    \
+		(STATUS)->file = (__FILE__);                           \
+		(STATUS)->function = (__FUNCTION__);                   \
+		(STATUS)->line = (unsigned long) ((__LINE__)-(OFFSET));\
+		(STATUS)->message = malloc(strlen(MESSAGE)+1 + LENGTH);\
+		if ((STATUS)->message == NULL)                         \
 		{                                                      \
-			set_status (STATUS, E_ALLOC, OFFSET,           \
+			set_status ((STATUS), E_ALLOC, (OFFSET),       \
 			            "malloc failed while generating "  \
 			            "error message");                  \
 		}                                                      \
-		sprintf (STATUS->message, MESSAGE, __VA_ARGS__);       \
+		sprintf ((STATUS)->message, (MESSAGE), __VA_ARGS__);   \
 	};                                                             \
                                                                        \
-	ERROR_ (MESSAGE, __VA_ARGS__);                                 \
+	ERROR_ ((MESSAGE), __VA_ARGS__);                               \
 }                                                                      \
 while (FALSE)
 
 #define set_success(STATUS) set_status(STATUS, SUCCESS, 0, NULL)
 
+#define _status_preinit(STATUS)                                        \
+do {                                                                   \
+	(STATUS).status = UNDEFINED;                                   \
+	(STATUS).errno_ = 0;                                           \
+	(STATUS).file = NULL;                                          \
+	(STATUS).line = 0;                                             \
+	(STATUS).message = NULL;                                       \
+}                                                                      \
+while (FALSE)
 
 #endif /* LIB_SEFHT_COMPILATION */
 
diff --git a/tests/test_cms.c b/tests/test_cms.c
index 5366e3c75ffe362917960bbcf9996ac3c1ccb158..f35935b9b93fd62dcb97988e0a083357a20d01c5 100644
--- a/tests/test_cms.c
+++ b/tests/test_cms.c
@@ -40,7 +40,7 @@ START_TEST(test_cms)
 
 	SH_Cms_free (cms);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	cms = SH_Cms_new (&status);
 	ck_assert_int_ne ((long int) cms, (long int) NULL);
 	ck_assert_int_eq (status.status, SUCCESS);
diff --git a/tests/test_data.c b/tests/test_data.c
index dcf368e7fd5e5cbac69b17fe886ba99437e110f5..9687a5ddf6a7d5bd21ab09ffece0859d76de04f2 100644
--- a/tests/test_data.c
+++ b/tests/test_data.c
@@ -43,7 +43,7 @@ START_TEST(test_data)
 
 	SH_Data_free (data);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	data = SH_Data_new (&status);
 	ck_assert_int_ne ((long int) data, (long int) NULL);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -101,7 +101,7 @@ START_TEST(test_data_register_page)
 	/* success with error */
 	data->last_page = 1;
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	page = SH_Data_register_page (data, page4, &status);
 	ck_assert_int_eq (page, 2);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -115,7 +115,7 @@ START_TEST(test_data_register_page)
 	/* fail with error */
 	data->page_n = SIZE_MAX;
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	page = SH_Data_register_page (data, page5, &status);
 	ck_assert_int_eq (page, PAGE_ERR);
 	ck_assert_int_eq (status.status, E_DOMAIN);
@@ -127,7 +127,7 @@ START_TEST(test_data_register_page)
 	data->page_n = 2;
 	data->last_page = PAGE_MAX;
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	page = SH_Data_register_page (data, page6, &status);
 	ck_assert_int_eq (page, PAGE_ERR);
 	ck_assert_int_eq (status.status, E_DOMAIN);
diff --git a/tests/test_node_fragment.c b/tests/test_node_fragment.c
index 42a42cc1ed58aa7a30b51645558923c98cf363a2..d7c14a1ec6d6d2bea92a06ea23ddeda1da0f18de 100644
--- a/tests/test_node_fragment.c
+++ b/tests/test_node_fragment.c
@@ -50,7 +50,7 @@ START_TEST(test_node_fragment)
 	SH_Fragment_free (fragment);
 
 	/* valid tag - error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	fragment = SH_NodeFragment_new (tag, data, &status);
 	ck_assert_int_ne ((long int) fragment, (long int) NULL);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -89,7 +89,7 @@ START_TEST(test_node_fragment_copy)
 	SH_Fragment_free (copy);
 
 	/* with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	copy = SH_NodeFragment_copy (((struct SH_NodeFragment *) fragment),
 				     &status);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -187,7 +187,7 @@ START_TEST(test_node_fragment_deepcopy)
 	SH_Fragment_free (copy);
 
 	/* with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	copy = SH_Fragment_copy (fragment, &status);
 	ck_assert_int_eq (status.status, SUCCESS);
 
@@ -234,7 +234,7 @@ START_TEST(test_node_fragment_tag)
 	/* error */
 	fragment = SH_NodeFragment_new (tag2, data, NULL);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	tag = SH_NodeFragment_get_tag (((struct SH_NodeFragment *) fragment),
 				       &status);
 	ck_assert_str_eq (tag, tag2);
@@ -275,7 +275,7 @@ START_TEST(test_node_fragment_child)
 	/* with error */
 	ck_assert_int_eq (((struct SH_NodeFragment *) parent)->child_n, 1);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	boolean = SH_NodeFragment_append_child (((struct SH_NodeFragment *) parent),
 						child2, &status);
 	ck_assert_int_eq (boolean, TRUE);
@@ -317,13 +317,13 @@ START_TEST(test_node_fragment_get_child)
 	ck_assert_ptr_eq (NULL, child2);
 
 	/* with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	child2 = SH_NodeFragment_get_child (((struct SH_NodeFragment *) parent),
 					    0, &status);
 	ck_assert_ptr_eq (child1, child2);
 	ck_assert_int_eq (status.status, SUCCESS);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	child2 = SH_NodeFragment_get_child (((struct SH_NodeFragment *) parent),
 					    1, &status);
 	ck_assert_ptr_eq (NULL, child2);
@@ -464,7 +464,7 @@ START_TEST(test_node_fragment_html)
 	SH_NodeFragment_append_child (((struct SH_NodeFragment *) fragment1),
 				      fragment2, NULL);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	text = SH_Fragment_to_html (fragment1, INLINE, 0, 1, INDENT_TEXT,
 				    &status);
 	string = SH_Text_get_string (text, 0, SIZE_MAX, &length, NULL);
@@ -472,7 +472,7 @@ START_TEST(test_node_fragment_html)
 	free (string);
 	ck_assert_int_eq (status.status, SUCCESS);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	text = SH_Fragment_to_html (fragment1, WRAP, 0, 1, INDENT_TEXT,
 				    &status);
 	string = SH_Text_get_string (text, 0, SIZE_MAX, &length, NULL);
diff --git a/tests/test_text.c b/tests/test_text.c
index e05ca70495b82c9b6a869e18958bf2cafae38ac5..986ae71cfd80ff8c49e05a7ddaf896a9407b03fd 100644
--- a/tests/test_text.c
+++ b/tests/test_text.c
@@ -52,7 +52,7 @@ START_TEST(test_text)
 
 	SH_Text_free (text);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	text = SH_Text_new (&status);
 	ck_assert_int_ne ((long int) text, (long int) NULL);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -81,7 +81,7 @@ START_TEST(test_text_string)
 
 
 	/* with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	text = SH_Text_new_from_string ("12345", &status);
 	ck_assert_int_ne ((long int) text, (long int) NULL);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -118,7 +118,7 @@ START_TEST (test_text_copy)
 	SH_Text_free (copy);
 
 	/* with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	copy = SH_Text_copy (text, &status);
 	ck_assert_int_eq (status.status, SUCCESS);
 	ck_assert_ptr_ne (copy, NULL);
@@ -148,7 +148,7 @@ START_TEST(test_text_get_length)
 	ck_assert_int_eq (length, 0);
 
 	/* length == 0 - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	length = SH_Text_get_length (text, &status);
 	ck_assert_int_eq (length, 0);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -164,7 +164,7 @@ START_TEST(test_text_get_length)
 	ck_assert_int_eq (length, SIZE_MAX);
 
 	/* length == SIZE_MAX - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	length = SH_Text_get_length (text, &status);
 	ck_assert_int_eq (length, SIZE_MAX);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -176,7 +176,7 @@ START_TEST(test_text_get_length)
 	ck_assert_int_eq (length, SIZE_MAX);
 
 	/* length > SIZE_MAX - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	length = SH_Text_get_length (text, &status);
 	ck_assert_int_eq (length, SIZE_MAX);
 	ck_assert_int_eq (status.status, E_DOMAIN);
@@ -212,7 +212,7 @@ START_TEST(test_text_get_char)
 	/* success - with error */
 	for (i = 0; i < 12; i++)
 	{
-		status.status = UNDEFINED;
+		_status_preinit (status);
 		c = SH_Text_get_char (text, i, &status);
 		ck_assert_ptr_ne (c, NULL);
 		ck_assert_int_eq (*c, 97 + i);
@@ -221,7 +221,7 @@ START_TEST(test_text_get_char)
 	}
 
 	/* wrong index - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	c = SH_Text_get_char (text, 13, &status);
 	ck_assert_ptr_eq (c, NULL);
 	ck_assert_int_eq (status.status, E_VALUE);
@@ -270,7 +270,7 @@ START_TEST(test_text_get_string)
 
 
 	/* single segment - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	result = SH_Text_get_string (text, 59, 8, &length, &status);
 	ck_assert_str_eq (result, "<=>?@ABC");
 	ck_assert_int_eq (length, 8);
@@ -278,7 +278,7 @@ START_TEST(test_text_get_string)
 	free (result);
 
 	/* multiple segment - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	result = SH_Text_get_string (text, 47, 43, &length, &status);
 	ck_assert_str_eq (result, "0123456789:;<=>?@"
 	                          "ABCDEFGHIJKLMNOPQRSTUVWXYZ");
@@ -287,7 +287,7 @@ START_TEST(test_text_get_string)
 	free (result);
 
 	/* pass over end - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	result = SH_Text_get_string (text, 96, 10, &length, &status);
 	ck_assert_str_eq (result, "abc");
 	ck_assert_int_eq (length, 3);
@@ -295,7 +295,7 @@ START_TEST(test_text_get_string)
 	free (result);
 
 	/* out of range - without error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	result = SH_Text_get_string (text, 99, 0, &length, &status);
 	ck_assert_ptr_eq (result, NULL);
 	ck_assert_int_eq (length, 0);
@@ -345,7 +345,7 @@ START_TEST(test_text_get_range)
 
 
 	/* single segment - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	result = SH_Text_get_range (text, 59, 67, &length, &status);
 	ck_assert_str_eq (result, "<=>?@ABC");
 	ck_assert_int_eq (length, 8);
@@ -353,7 +353,7 @@ START_TEST(test_text_get_range)
 	free (result);
 
 	/* multiple segment - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	result = SH_Text_get_range (text, 47, 90, &length, &status);
 	ck_assert_str_eq (result, "0123456789:;<=>?@"
 	                          "ABCDEFGHIJKLMNOPQRSTUVWXYZ");
@@ -362,7 +362,7 @@ START_TEST(test_text_get_range)
 	free (result);
 
 	/* pass over end - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	result = SH_Text_get_range (text, 96, 106, &length, &status);
 	ck_assert_str_eq (result, "abc");
 	ck_assert_int_eq (length, 3);
@@ -370,7 +370,7 @@ START_TEST(test_text_get_range)
 	free (result);
 
 	/* out of range - without error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	result = SH_Text_get_range (text, 99, 99, &length, &status);
 	ck_assert_ptr_eq (result, NULL);
 	ck_assert_int_eq (length, 0);
@@ -401,7 +401,7 @@ START_TEST (test_text_append)
 	free (string);
 
 	/* append_string - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	boolean = SH_Text_append_string (text2, "Text2", &status);
 	ck_assert_int_eq (boolean, TRUE);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -420,7 +420,7 @@ START_TEST (test_text_append)
 	free (string);
 
 	/* append_text - with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	boolean = SH_Text_append_text (text1, text2, &status);
 	ck_assert_int_eq (boolean, TRUE);
 	ck_assert_int_eq (status.status, SUCCESS);
diff --git a/tests/test_validator.c b/tests/test_validator.c
index caddb4216f151c18f6caff9e5de44243124062d8..73072bcc42036250f5040f01d56b466cc64a814a 100644
--- a/tests/test_validator.c
+++ b/tests/test_validator.c
@@ -52,7 +52,7 @@ START_TEST(test_validator)
 
 	SH_Validator_free (validator);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	validator = SH_Validator_new (&status);
 	ck_assert_int_ne ((long int) validator, (long int) NULL);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -163,7 +163,7 @@ START_TEST(test_validator_tag)
 	validator = SH_Validator_new (NULL);
 
 	/* success with error */
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	tag = SH_Validator_register_tag (validator, tag4, &status);
 	ck_assert_int_eq (tag, 1);
 	ck_assert_int_eq (status.status, SUCCESS);
@@ -199,7 +199,7 @@ START_TEST(test_validator_tag)
 
 	free (tagN);
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	tag = SH_Validator_register_tag (validator, tag5, &status);
 	ck_assert_int_eq (tag, TAG_ERR);
 	ck_assert_int_eq (status.status, E_DOMAIN);
@@ -213,7 +213,7 @@ START_TEST(test_validator_tag)
 	validator->tag_n = 1;
 	validator->last_tag = TAG_MAX;
 
-	status.status = UNDEFINED;
+	_status_preinit (status);
 	tag = SH_Validator_register_tag (validator, tag6, &status);
 	ck_assert_int_eq (tag, TAG_ERR);
 	ck_assert_int_eq (status.status, E_DOMAIN);