diff --git a/src/include/test/switch_fct.h b/src/include/test/switch_fct.h index b28feabb742..91d87bbb9ca 100644 --- a/src/include/test/switch_fct.h +++ b/src/include/test/switch_fct.h @@ -254,10 +254,18 @@ fctstr_safe_cpy(char *dst, char const *src, size_t num) FCT_ASSERT( num > 0 ); #if defined(WIN32) && _MSC_VER >= 1400 strncpy_s(dst, num, src, _TRUNCATE); + dst[num - 1] = '\0'; #else - strncpy(dst, src, num - 1); + { + size_t i; + + for (i = 0; (i < num - 1) && src[i] != '\0'; ++i) { + dst[i] = src[i]; + } + + dst[i] = '\0'; + } #endif - dst[num-1] = '\0'; } /* Isolate the vsnprintf implementation */ diff --git a/tests/unit/switch_core.c b/tests/unit/switch_core.c index d23dd254a9b..397fe919cac 100644 --- a/tests/unit/switch_core.c +++ b/tests/unit/switch_core.c @@ -53,24 +53,6 @@ FST_CORE_BEGIN("./conf") } FST_TEARDOWN_END() - - FST_TEST_BEGIN(test_switch_regex) - { - switch_regex_match_t *match_data = NULL; - switch_regex_t *re = NULL; - char buf[100] = { 0 }; - size_t size = sizeof(buf); - - switch_regex_perform("1234", "^[0-9]+$", &re, &match_data); - switch_regex_copy_substring(match_data, 0, buf, &size); - switch_regex_match_free(match_data); - switch_regex_free(re); - - switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "\n%s\n", buf); - fst_check_string_equals(buf, "1234"); - } - FST_TEST_END() - FST_TEST_BEGIN(test_fctstr_safe_cpy) { char *dst; @@ -82,7 +64,6 @@ FST_CORE_BEGIN("./conf") } FST_TEST_END() - FST_TEST_BEGIN(test_switch_rand) { int i, c = 0;