anchor.diff:          {ok, Data} ->
               call(Active, Socket, Data, State, Module, Options);
           {'EXIT', Reason} ->
  +            catch gen_tcp:close(Socket),
               {error, Reason};
           {error, closed} ->
  +            catch gen_tcp:close(Socket),
               {error, connection_closed};
  +        {error, not_owner} ->
  +            timer:sleep(0),
  +            recv(Active, Socket, State, Module, Options);
           {error, Reason} ->
  +            catch gen_tcp:close(Socket),
               {error, Reason}
       end;
   
  
positive.code: %% Callbacks
  %% ---------------------------------------------------------------------
  %% @doc Callback - Initialize the server
  -spec(init(Parent, Socket, State, Module, Options) ->
               ok when Parent::pid(),
                       Socket::gen_tcp:socket(),
                       State::any(),
                       Module::module(),
                       Options::#tcp_server_params{}).
  init(Parent, Socket, State, Module, Options) ->
      proc_lib:init_ack(Parent, {ok, self()}),
  
      ListenerOptions = Options#tcp_server_params.listen,
      Active = proplists:get_value(active, ListenerOptions),
      accept(Socket, State, Module, Active, Options).
  
negative.code:         {noreply, NewState} ->
              recv(Active, Socket, NewState, Module, Options);
          {close, State} ->
              catch gen_tcp:close(Socket),
              {error, connection_closed};
          {close, DataToSend, State} ->
              gen_tcp:send(Socket, DataToSend),
              catch gen_tcp:close(Socket),
              {error, connection_closed};
          Other ->
              catch gen_tcp:close(Socket),
              Other
      end.
  
  