From a06a3f712dd51b902a7fbb2a042fd6e4624ae5cf Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Thu, 10 Dec 2009 22:15:26 +0000 Subject: 2009-12-10 Joel Sherrill PR 1482 * posix/src/timersettime.c: Exit dispatching critical section. --- cpukit/ChangeLog | 5 +++++ cpukit/posix/src/timersettime.c | 12 ++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog index 58824cc8e2..6d30ef8206 100644 --- a/cpukit/ChangeLog +++ b/cpukit/ChangeLog @@ -1,3 +1,8 @@ +2009-12-10 Joel Sherrill + + PR 1482 + * posix/src/timersettime.c: Exit dispatching critical section. + 2009-12-10 Joel Sherrill PR 1480/cpukit diff --git a/cpukit/posix/src/timersettime.c b/cpukit/posix/src/timersettime.c index 6099ae0400..3518c4448e 100644 --- a/cpukit/posix/src/timersettime.c +++ b/cpukit/posix/src/timersettime.c @@ -102,11 +102,15 @@ int timer_settime( _POSIX_Timer_TSR, ptimer ); - if ( !activated ) + if ( !activated ) { + _Thread_Enable_dispatch(); return 0; + } - /* The timer has been started and is running */ - /* return the old ones in "ovalue" */ + /* + * The timer has been started and is running. So we return the + * old ones in "ovalue" + */ if ( ovalue ) *ovalue = ptimer->timer_data; ptimer->timer_data = normalize; @@ -114,7 +118,7 @@ int timer_settime( /* Indicate that the time is running */ ptimer->state = POSIX_TIMER_STATE_CREATE_RUN; _TOD_Get( &ptimer->time ); - _Thread_Enable_dispatch(); + _Thread_Enable_dispatch(); return 0; #if defined(RTEMS_MULTIPROCESSING) -- cgit v1.2.3