diff --git a/targets/RT/USER/rrh_gw.c b/targets/RT/USER/rrh_gw.c
index a73ed2466b431e77f1e3852b5f4b18c13dfb6eb5..e73c9ef4ebe0455db9a51b4c74dd908994df0cdf 100644
--- a/targets/RT/USER/rrh_gw.c
+++ b/targets/RT/USER/rrh_gw.c
@@ -376,7 +376,7 @@ void *timer_proc(void *arg) {
 
   timer_t             timerid;    
   struct itimerspec   *timer= (struct itimerspec *)arg ; // the timer data structure
-  struct itimerspec   *old_value;
+  struct itimerspec   old_value;
 
   
 #ifdef DEADLINE_SCHEDULER
@@ -407,7 +407,7 @@ void *timer_proc(void *arg) {
   
   signal(SIGALRM, timer_signal_handler);
   LOG_I(RRH,"Timer has started!\n");
-  timer_settime (timerid, 0, timer, old_value);
+  timer_settime (timerid, 0, timer, &old_value);
 
   while (!rrh_exit) {
     sleep(1);