]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Test: Fixed annoying warnings (and possible obscure bugs).
authorMaria Matejka <mq@ucw.cz>
Fri, 8 Feb 2019 10:19:04 +0000 (11:19 +0100)
committerMaria Matejka <mq@ucw.cz>
Wed, 20 Feb 2019 21:30:54 +0000 (22:30 +0100)
filter/filter_test.c
test/birdtest.c
test/birdtest.h

index 54ea3e9be0aee40cb1c32805d765a721fde106cc..a02f0832d989c8a960e94cd969700577fe0d2a49 100644 (file)
@@ -35,7 +35,7 @@ parse_config_file(const void *argv)
   const struct parse_config_file_arg *arg = argv;
   size_t fn_size = strlen(arg->filename) + 1;
   char *filename = alloca(fn_size);
-  strncpy(filename, arg->filename, fn_size);
+  memcpy(filename, arg->filename, fn_size);
   
   *(arg->cp) = bt_config_file_parse(filename);
   return !!*(arg->cp);
index a4312e9b18ffe9320feb979732875913b814a28d..347f79b9c257c56cbfa8e9ad11666982e3a73ada 100644 (file)
@@ -155,10 +155,7 @@ int bt_run_test_fn(int (*fn)(const void *), const void *fn_arg, int timeout)
   int result;
   alarm(timeout);
 
-  if (fn_arg)
-    result = fn(fn_arg);
-  else
-    result = ((int (*)(void))fn)();
+  result = fn(fn_arg);
 
   if (!bt_suite_result)
     result = 0;
index 4443bfc1c865a62124063748b6cad76455e81ec6..18228711e8edccd2a52891a1043b41d728228665 100644 (file)
@@ -54,11 +54,13 @@ void bt_log_suite_case_result(int result, const char *fmt, ...);
 #define BT_PROMPT_FAIL_NO_COLOR                " ["                 "FAIL"                  "] "
 #define BT_PROMPT_OK_FAIL_STRLEN       8       /* strlen ' [FAIL] ' */
 
+static inline int bt_test_fn_noarg(const void *cp) { return ((int (*)(void)) cp)(); }
+
 #define bt_test_suite(fn, dsc, ...) \
   bt_test_suite_extra(fn, BT_FORKING, BT_TIMEOUT, dsc, ##__VA_ARGS__)
 
 #define bt_test_suite_extra(fn, f, t, dsc, ...) \
-  bt_test_suite_base((int (*)(const void *))fn, #fn, NULL, f, t, dsc, ##__VA_ARGS__)
+  bt_test_suite_base(bt_test_fn_noarg, #fn, fn, f, t, dsc, ##__VA_ARGS__)
 
 #define bt_test_suite_arg(fn, arg, dsc, ...) \
   bt_test_suite_arg_extra(fn, arg, BT_FORKING, BT_TIMEOUT, dsc, ##__VA_ARGS__)