anchor.diff:      Descr = SipTimer#siptimer.description,
       logger:log(debug, "Siptimer: Cancelling timer ~p:~p", [Ref, Descr]),
       timer:cancel(Timer),
  +    remove_queued_result({siptimer, Ref, Descr}),
       make_siptimerlist(del_ref(Ref, TimerList#siptimerlist.list)).
  +
  +%% Receive all messages matching Signal from this processes mailbox. When there
  +%% are no more signals matching Signal, return ok. This is to remove any signals
  +%% from a timer that we have in queue when we cancel the timer.
  +remove_queued_result(Signal) ->
  +    receive
  +	Signal ->
  +	    remove_queued_result(Signal)
  +    after 0 ->
  +	    ok
  +    end.
   
   del_ref(_Ref, []) ->
       [];
  
positive.code:     Descr = SipTimer#siptimer.description,
      logger:log(debug, "Siptimer: Stopping timer ~p:~p", [Ref, Descr]),
      timer:cancel(Timer),
      stop_timers2(Rest).
  
  cancel_timers(CancelTimers, TimerList) when is_record(CancelTimers, siptimerlist), is_record(TimerList, siptimerlist) ->
  
negative.code: 	    logger:log(error, "Siptimer: Can't reset timer ~p:~p gone from list :~n~p~n", [Ref, Description, TimerList]),
  	    TimerList;
          ThisTimer ->
              Description = ThisTimer#siptimer.description,
  	    timer:cancel(ThisTimer#siptimer.timer),
  	    remove_queued_result({siptimer, Ref, Description}),
              Timeout = ThisTimer#siptimer.timeout,
  	    OldStarttime = ThisTimer#siptimer.starttime,
  	    SecondsLeft = (OldStarttime + (Timeout div 1000)) - util:timestamp(),
  