anchor.diff:  -author('bob@mochimedia.com').
   -export([start/0, start/1, stop/0, stop/1]).
   -export([loop/2, default_body/1]).
  +-export([after_response/2, reentry/1]).
   
   -define(IDLE_TIMEOUT, 30000).
   
  
positive.code:             Req = mochiweb:new_request({Socket, Request,
                                          lists:reverse(Headers)}),
              Body(Req),
              case Req:should_close() of
                  true ->
                      gen_tcp:close(Socket),
                      exit(normal);
                  false ->
                      Req:cleanup(),
                      ?MODULE:loop(Socket, Body)
              end;
          {ok, {http_header, _, Name, _, Value}} ->
              headers(Socket, Request, [{Name, Value} | Headers], Body,
                      1 + HeaderCount);
  
negative.code:             gen_tcp:close(Socket),
              exit(normal)
      end.
  
  after_response(Body, Req) ->
      Socket = Req:get(socket),
      case Req:should_close() of
          true ->
              gen_tcp:close(Socket),
              exit(normal);
          false ->
              Req:cleanup(),
              ?MODULE:loop(Socket, Body)
      end.
  