diff options
Diffstat (limited to 'cpukit/rtems/src/taskrestart.c')
-rw-r--r-- | cpukit/rtems/src/taskrestart.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/cpukit/rtems/src/taskrestart.c b/cpukit/rtems/src/taskrestart.c index 0b56ed5b18..8aa7c73d9a 100644 --- a/cpukit/rtems/src/taskrestart.c +++ b/cpukit/rtems/src/taskrestart.c @@ -28,12 +28,15 @@ rtems_status_code rtems_task_restart( { Thread_Control *the_thread; Objects_Locations location; + Thread_Entry_information entry; the_thread = _Thread_Get( id, &location ); switch ( location ) { case OBJECTS_LOCAL: - if ( _Thread_Restart( the_thread, _Thread_Executing, NULL, argument ) ) { + entry = the_thread->Start.Entry; + entry.Kinds.Numeric.argument = argument; + if ( _Thread_Restart( the_thread, _Thread_Executing, &entry ) ) { _Objects_Put( &the_thread->Object ); return RTEMS_SUCCESSFUL; } |