anchor.diff:  
   
   process_event({action, Fun, Args}) ->
  -    sync_lock(0),
  +    % Make sure the lock is obtained or crash otherwise
  +    ok = sync_lock(0),
       reset_wire_accumulator(),
       put(user_id, gui_utils:get_user_dn()),
       erlang:apply(?MODULE, Fun, Args),
  
positive.code: 
  
  sync_lock(MinTimePassed) ->
      Pid = get_key(sync_pid),
      Pid ! {self(), lock, MinTimePassed},
      receive {Pid, Ans} -> Ans end.
  
  sync_release() ->
      Pid = get_key(sync_pid),
  
negative.code: comet_loop() ->
      case sync_lock(?AUTOREFRESH_PERIOD) of
          {wait, Time} ->
              timer:sleep(Time),
              comet_loop();
          ok ->
              try
                  case gui_utils:get_user_dn() of
  