diff options
Diffstat (limited to 'hicn-light/src/hicn/base')
-rw-r--r-- | hicn-light/src/hicn/base/loop.c | 11 | ||||
-rw-r--r-- | hicn-light/src/hicn/base/test/test-loop.cc | 13 |
2 files changed, 11 insertions, 13 deletions
diff --git a/hicn-light/src/hicn/base/loop.c b/hicn-light/src/hicn/base/loop.c index 6e477f85a..8588b538d 100644 --- a/hicn-light/src/hicn/base/loop.c +++ b/hicn-light/src/hicn/base/loop.c @@ -92,11 +92,14 @@ ERR_MALLOC: return NULL; } -void loop_free(loop_t *loop) { event_base_free(loop->event_base); } +void loop_free(loop_t *loop) { + event_base_free(loop->event_base); + free(loop); +} int loop_dispatch(loop_t *loop) { - event_base_loop(loop->event_base, 0); + event_base_loop(loop->event_base, EVLOOP_NO_EXIT_ON_EMPTY); return 0; } @@ -201,7 +204,7 @@ int loop_timer_is_enabled(event_t *timer) int loop_event_free(event_t *event) { - loop_event_unregister(event); + int ret = loop_event_unregister(event); free(event); - return 0; + return ret; } diff --git a/hicn-light/src/hicn/base/test/test-loop.cc b/hicn-light/src/hicn/base/test/test-loop.cc index 44684ef0e..c86ccd5e6 100644 --- a/hicn-light/src/hicn/base/test/test-loop.cc +++ b/hicn-light/src/hicn/base/test/test-loop.cc @@ -175,15 +175,10 @@ class LoopTest : public ::testing::Test { char buffer[BUFFER_SIZE]; }; -TEST_F(LoopTest, LoopCreate) +TEST_F(LoopTest, LoopCreateAndFree) { loop_ = loop_create(); EXPECT_TRUE(loop_ != NULL); -} - -TEST_F(LoopTest, LoopFree) -{ - loop_ = loop_create(); loop_free (loop_); EXPECT_TRUE(loop_ != NULL); } @@ -205,7 +200,7 @@ TEST_F(LoopTest, EventCreateAndFree) EXPECT_TRUE(ret >= 0); // Unregister the event - ret = loop_event_unregister(event_); + ret = loop_event_free(event_); EXPECT_TRUE(ret >= 0); // Free event loop @@ -239,8 +234,8 @@ TEST_F(LoopTest, TimerCreateAndCancel) loop_undispatch(loop_); // Unregister the events - ret = loop_event_unregister(timer_); - ret += loop_event_unregister(timer2); + ret = loop_event_free(timer_); + ret += loop_event_free(timer2); EXPECT_TRUE(ret >= 0); // Free event loop |