anchor.diff:  -behaviour(gen_server).
   
   %% API
  --export([start_undo_server/0, undo/0, add_to_history/1]).
  +-export([start_undo_server/0, undo/0, files_to_change/0, add_to_history/1]).
   
   %% gen_server callbacks
   -export([init/1, handle_call/3, handle_cast/2, handle_info/2,
  
positive.code:     process_flag(trap_exit, true),
      gen_server:start_link({local, refactor_undo}, ?MODULE, [], []).
  
  %%-spec(undo/0::() ->
  %%	     {ok, [filename()]}).
  undo() ->
      gen_server:call(refactor_undo, undo).
     
  %%-spec(add_to_history/1::([{filename(), filename(), binary()}]) -> ok).
  	     
  add_to_history({Files, LogMsg, CurFile})->
      gen_server:cast(refactor_undo, {add, {Files, LogMsg, CurFile}}).
  
negative.code: 		    end;
  		false ->
  		    case IsNew of 
  			true -> %% This should not happen.
  			    file:delete(OldFileName),
  			    file:delete(NewFileName),
  			    undo_files(T);
  