aboutsummaryrefslogtreecommitdiffstats
path: root/os/rt
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2015-04-13 12:10:23 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2015-04-13 12:10:23 +0000
commit2462d4b270b1f1bfa2028196dcda6fbe9db03f05 (patch)
tree273d90b4ef209c816ffeb6374d0e116b79b7af00 /os/rt
parent5e74f17084778dc526471d4839ebf564c3b18b5d (diff)
downloadChibiOS-2462d4b270b1f1bfa2028196dcda6fbe9db03f05.tar.gz
ChibiOS-2462d4b270b1f1bfa2028196dcda6fbe9db03f05.tar.bz2
ChibiOS-2462d4b270b1f1bfa2028196dcda6fbe9db03f05.zip
Fixed bug 577.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@7888 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/rt')
-rw-r--r--os/rt/src/chvt.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/os/rt/src/chvt.c b/os/rt/src/chvt.c
index 7f4ab6a89..214e8a7b6 100644
--- a/os/rt/src/chvt.c
+++ b/os/rt/src/chvt.c
@@ -204,9 +204,9 @@ void chVTDoResetI(virtual_timer_t *vtp) {
vtp->vt_next->vt_prev = vtp->vt_prev;
vtp->vt_func = NULL;
- /* The above code can change the value in the header when the removed
- element is the last of the list, restoring it.*/
- ch.vtlist.vt_delta = (systime_t)-1;
+ /* Adding delta to the next element, if it is not the last one.*/
+ if (&ch.vtlist != (virtual_timers_list_t *)vtp->vt_next)
+ vtp->vt_next->vt_delta += vtp->vt_delta;
return;
}