aboutsummaryrefslogtreecommitdiffstats
path: root/src/chsem.c
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2008-01-25 10:07:18 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2008-01-25 10:07:18 +0000
commit811bbbc8fbe38cda9361b11d0e23fbc927153c53 (patch)
tree8b3ba6d4e560b6204452749653d326e4c5114c9f /src/chsem.c
parent86f169d26dbfb0ea1a35e1736401464e10c7ac94 (diff)
downloadChibiOS-811bbbc8fbe38cda9361b11d0e23fbc927153c53.tar.gz
ChibiOS-811bbbc8fbe38cda9361b11d0e23fbc927153c53.tar.bz2
ChibiOS-811bbbc8fbe38cda9361b11d0e23fbc927153c53.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@184 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'src/chsem.c')
-rw-r--r--src/chsem.c11
1 files changed, 2 insertions, 9 deletions
diff --git a/src/chsem.c b/src/chsem.c
index ceaa64399..edec3b5db 100644
--- a/src/chsem.c
+++ b/src/chsem.c
@@ -47,18 +47,11 @@ void chSemInit(Semaphore *sp, t_cnt n) {
* \p RDY_RESET.
*/
void chSemReset(Semaphore *sp, t_cnt n) {
- t_cnt cnt;
- chDbgAssert(n >= 0, "chsem.c, chSemReset()");
chSysLock();
- cnt = sp->s_cnt;
- sp->s_cnt = n;
- if (cnt < 0) {
- while (cnt++)
- chSchReadyI(fifo_remove(&sp->s_queue), RDY_RESET);
- chSchRescheduleS();
- }
+ chSemResetI(sp, n);
+ chSchRescheduleS();
chSysUnlock();
}