anchor.diff:          %% If we have no TimerRef, then the browser never performed
           %% the callback, so kill this process after 20 seconds.
           case TimerRef == undefined of
  -            true  -> erlang:exit({accumulator_loop, timeout});
  +            true  ->
  +                maybe_kill_waiting(Waiting),
  +                erlang:exit({accumulator_loop, timeout});
               false -> accumulator_loop(Guardians, Actions, Waiting, TimerRef, WebsocketPid, ProcessTags)
           end
       end.
  +
  +maybe_kill_waiting(Pid) when is_pid(Pid) ->
  +    Pid ! killed_when_accumulator_died;
  +maybe_kill_waiting(_) ->
  +    ok.
  +
   
   % The guardian process monitors the running AsyncFunction and
   % the running Accumulator. If either one dies, then send 
  
positive.code:                 false ->
                      % Guardian_process will detect that we've died and update
                      % the pool.
                      erlang:exit({accumulator_loop, exiting_lease_expired})
              end;
          Other ->
              ?PRINT({accumulator_loop, unhandled_event, Other}),
              accumulator_loop(Guardians, Actions, Waiting, TimerRef, WebsocketPid, ProcessTags)
  
negative.code:     wf:wire(page, page, #comet { function=Pid, pool=Pool, scope=Scope }),
      {ok, Pid}.
  
  status(Pid) ->
      {dictionary, PD} = erlang:process_info(Pid, dictionary), 
      Context = proplists:get_value(context, PD),
      PC = Context#context.page_context,
      Seriesid = PC#page_context.series_id,
      ?PRINT({seriesid, Seriesid}),
      {ok, AccPid} = get_accumulator_pid_no_start(Seriesid),
      AccPid ! info.
  
  %% @doc Gather all wired actions, and send to the accumulator.
  flush() ->
      %% If we've managed to establish a websocket connection after the comet
  