aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2015-08-22 09:07:00 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2015-08-22 09:07:00 +0000
commitd8366c2bf5359f7b65e612eb33379fed578c6d91 (patch)
tree920f0e20ac27e4207818fb1e0e280bda895e9ca1 /os/hal
parent3caa603df42e9215259d6d2256da1c3911e7d8ae (diff)
downloadChibiOS-d8366c2bf5359f7b65e612eb33379fed578c6d91.tar.gz
ChibiOS-d8366c2bf5359f7b65e612eb33379fed578c6d91.tar.bz2
ChibiOS-d8366c2bf5359f7b65e612eb33379fed578c6d91.zip
Fixed bug #633 (tentative).
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@8232 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal')
-rw-r--r--os/hal/osal/nil/osal.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/os/hal/osal/nil/osal.c b/os/hal/osal/nil/osal.c
index 2c500f4b6..f935e6e8c 100644
--- a/os/hal/osal/nil/osal.c
+++ b/os/hal/osal/nil/osal.c
@@ -96,6 +96,10 @@ void osalThreadDequeueAllI(threads_queue_t *tqp, msg_t msg) {
sp->cnt = (cnt_t)0;
tr = nil.threads;
while (cnt < (cnt_t)0) {
+
+ chDbgAssert(tr < &nil.threads[NIL_CFG_NUM_THREADS],
+ "pointer out of range");
+
/* Is this thread waiting on this semaphore?*/
if (tr->u1.semp == sp) {
@@ -105,9 +109,6 @@ void osalThreadDequeueAllI(threads_queue_t *tqp, msg_t msg) {
(void) chSchReadyI(tr, msg);
}
tr++;
-
- chDbgAssert(tr < &nil.threads[NIL_CFG_NUM_THREADS],
- "pointer out of range");
}
}
2 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195