]>
git.ipfire.org Git - thirdparty/systemd.git/blob - src/test/test-static-destruct.c
1 /* SPDX-License-Identifier: LGPL-2.1+ */
3 #include "alloc-util.h"
4 #include "static-destruct.h"
10 static char* memory
= NULL
;
12 static void test_destroy(int *b
) {
16 STATIC_DESTRUCTOR_REGISTER(foo
, test_destroy
);
17 STATIC_DESTRUCTOR_REGISTER(bar
, test_destroy
);
18 STATIC_DESTRUCTOR_REGISTER(bar
, test_destroy
);
19 STATIC_DESTRUCTOR_REGISTER(baz
, test_destroy
);
20 STATIC_DESTRUCTOR_REGISTER(baz
, test_destroy
);
21 STATIC_DESTRUCTOR_REGISTER(baz
, test_destroy
);
22 STATIC_DESTRUCTOR_REGISTER(memory
, freep
);
24 int main(int argc
, char *argv
[]) {
25 test_setup_logging(LOG_INFO
);
27 assert_se(memory
= strdup("hallo"));
29 assert_se(foo
== 0 && bar
== 0 && baz
== 0);
31 assert_se(foo
== 1 && bar
== 2 && baz
== 3);