anchor.diff:  
   %% do_log is executed in caller pid (by log/2 or log/3), not in
   %% persistent logger process.
  -do_log(Level, Format, Arguments) when atom(Level), list(Format), list(Arguments) ->
  +do_log(Level, Format, Arguments) when is_atom(Level), is_list(Format), is_list(Arguments) ->
  +%%				      Level == debug; Level == normal; Level == error ->
       {Megasec, Sec, USec} = now(),
       USecStr = format_usec(USec, 3),
       DateTime = util:sec_to_date(Megasec * 1000000 + Sec),
       LogTS = lists:concat([DateTime, ".", USecStr]),
  -    gen_server:cast(logger, {log, Level, LogTS, Format, Arguments, self()}),
  +    Data = format_msg(LogTS, Level, self(), Format, Arguments),
  +    gen_server:cast(logger, {log, Level, Data}),
       ok.
   
   
  
positive.code:     case file:open(Filename, Args) of
  	{ok, FD} ->
  	    {ok, FD};
  	{error, E} ->
  	    erlang:fault("Error opening logfile", [Filename, Args])
      end.
  
  
negative.code: %% Purpose: Convert process state when code is changed
  %% Returns: {ok, NewState}
  %%--------------------------------------------------------------------
  code_change(_OldVsn, State, _Extra) ->
      {ok, State}.
  
  %%====================================================================
  