summaryrefslogtreecommitdiff
path: root/components
diff options
context:
space:
mode:
authorBernard Xiong <[email protected]>2019-06-25 21:33:36 +0800
committerGitHub <[email protected]>2019-06-25 21:33:36 +0800
commit2f1ab871381cfd6888c0214693e2580a07fdce05 (patch)
tree7b912e7c1bd1766beee1516eb1baa996fbd1a823 /components
parent4712956b228321285a28fb7a681f84950933b9ea (diff)
parent759848122e47775cfd8a0e9e3e7a2fa7189754c4 (diff)
Merge pull request #2808 from tyustli/cpp_thread
fix cpp thread class error
Diffstat (limited to 'components')
-rw-r--r--components/cplusplus/Thread.cpp5
-rw-r--r--components/utilities/utest/utest.h8
-rw-r--r--components/utilities/utest/utest_assert.h8
3 files changed, 19 insertions, 2 deletions
diff --git a/components/cplusplus/Thread.cpp b/components/cplusplus/Thread.cpp
index 0f6315d178..9b2a2ad5e0 100644
--- a/components/cplusplus/Thread.cpp
+++ b/components/cplusplus/Thread.cpp
@@ -14,7 +14,7 @@ Thread::Thread(rt_uint32_t stack_size,
rt_uint8_t priority,
rt_uint32_t tick,
const char *name)
-: _entry(RT_NULL), _param(RT_NULL), started(false)
+ : _entry(RT_NULL), _param(RT_NULL), started(false)
{
rt_event_init(&_event, name, 0);
@@ -32,7 +32,7 @@ Thread::Thread(void (*entry)(void *p),
rt_uint8_t priority,
rt_uint32_t tick,
const char *name)
-: _entry(RT_NULL), _param(p), started(false)
+ : _entry(entry), _param(p), started(false)
{
rt_event_init(&_event, name, 0);
@@ -46,6 +46,7 @@ Thread::Thread(void (*entry)(void *p),
Thread::~Thread()
{
+ rt_event_detach(&_event);
rt_thread_delete(_thread);
}
diff --git a/components/utilities/utest/utest.h b/components/utilities/utest/utest.h
index 386d177a77..2c91bfe0e1 100644
--- a/components/utilities/utest/utest.h
+++ b/components/utilities/utest/utest.h
@@ -15,6 +15,10 @@
#include "utest_log.h"
#include "utest_assert.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/**
* utest_error
*
@@ -157,4 +161,8 @@ utest_t utest_handle_get(void);
utest_unit_run(test_unit_func, #test_unit_func); \
if(utest_handle_get()->failed_num != 0) return;
+#ifdef __cplusplus
+}
+#endif
+
#endif /* __UTEST_H__ */
diff --git a/components/utilities/utest/utest_assert.h b/components/utilities/utest/utest_assert.h
index 9c620c689d..d83279272e 100644
--- a/components/utilities/utest/utest_assert.h
+++ b/components/utilities/utest/utest_assert.h
@@ -14,6 +14,10 @@
#include "utest.h"
#include <rtthread.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* No need for the user to use this function directly */
void utest_assert(int value, const char *file, int line, const char *func, const char *msg);
@@ -61,4 +65,8 @@ void utest_assert_buf(const char *a, const char *b, rt_size_t sz, rt_bool_t equa
#define uassert_in_range(value, min, max) __utest_assert(((value >= min) && (value <= max)), "(" #value ") not in range("#min","#max")")
#define uassert_not_in_range(value, min, max) __utest_assert(!((value >= min) && (value <= max)), "(" #value ") in range("#min","#max")")
+#ifdef __cplusplus
+}
+#endif
+
#endif /* __UTEST_ASSERT_H__ */