Move global Timeout object from utest_shim in static function.

The change of scope allow the linker to remove the variable if not used.
pull/2559/head
Vincent Coubard 2016-08-26 12:13:37 +01:00
parent acc3115e27
commit 2bc5c3d069
1 changed files with 6 additions and 3 deletions

View File

@ -66,7 +66,10 @@ static volatile utest_v1_harness_callback_t minimal_callback;
static volatile utest_v1_harness_callback_t ticker_callback;
// Timeout object used to control the scheduling of test case callbacks
Timeout utest_timeout_object;
static Timeout& utest_timeout_object() {
static Timeout timeout;
return timeout;
}
static void ticker_handler()
{
@ -88,7 +91,7 @@ static void *utest_us_ticker_post(const utest_v1_harness_callback_t callback, ti
if (delay_ms) {
ticker_callback = callback;
// fire the interrupt in 1000us * delay_ms
utest_timeout_object.attach_us(ticker_handler, delay_us);
utest_timeout_object().attach_us(ticker_handler, delay_us);
}
else {
@ -102,7 +105,7 @@ static int32_t utest_us_ticker_cancel(void *handle)
{
UTEST_LOG_FUNCTION();
(void) handle;
utest_timeout_object.detach();
utest_timeout_object().detach();
return 0;
}
static int32_t utest_us_ticker_run()