diff options
author | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2010-02-12 18:51:48 +0000 |
---|---|---|
committer | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2010-02-12 18:51:48 +0000 |
commit | 4d832fdf1c1ca932d16198df7b3c04dcd083e7e2 (patch) | |
tree | 39536ef89e04c6e25e29ad18fd0f1b6833d84cd5 /os/kernel/src | |
parent | 50254892c53ac6fee9106c3362b2990505420189 (diff) | |
download | ChibiOS-4d832fdf1c1ca932d16198df7b3c04dcd083e7e2.tar.gz ChibiOS-4d832fdf1c1ca932d16198df7b3c04dcd083e7e2.tar.bz2 ChibiOS-4d832fdf1c1ca932d16198df7b3c04dcd083e7e2.zip |
Few fixes to the new code after the batch build test.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@1592 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/kernel/src')
-rw-r--r-- | os/kernel/src/chregistry.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/os/kernel/src/chregistry.c b/os/kernel/src/chregistry.c index 05573acbf..b6555df40 100644 --- a/os/kernel/src/chregistry.c +++ b/os/kernel/src/chregistry.c @@ -43,7 +43,10 @@ Thread *chRegFirstThread(void) { Thread *tp;
chSysLock();
- (tp = rlist.p_newer)->p_refs++;
+ tp = rlist.p_newer;
+#if CH_USE_DYNAMIC
+ tp->p_refs++;
+#endif
chSysUnlock();
return tp;
}
@@ -60,14 +63,18 @@ Thread *chRegFirstThread(void) { Thread *chRegNextThread(Thread *tp) {
chSysLock();
+#if CH_USE_DYNAMIC
chDbgAssert(tp->p_refs > 0, "chRegNextThread(), #1",
"not referenced");
tp->p_refs--;
+#endif
if (tp->p_newer != (Thread *)&rlist) {
tp = tp->p_newer;
+#if CH_USE_DYNAMIC
chDbgAssert(tp->p_refs < 255, "chRegNextThread(), #2",
"too many references");
tp->p_refs++;
+#endif
}
else
tp = NULL;
|