summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexandru Scvortov <alexandru@rabbitmq.com>2011-09-05 12:55:23 +0100
committerAlexandru Scvortov <alexandru@rabbitmq.com>2011-09-05 12:55:23 +0100
commitae0c0323cc00558b54b73dd13ae792616778e939 (patch)
treea4b72de58016927faa0de8e64e8eadcf28ed324a /src
parent9e258d4f4f069cf49ac836a8e32a7d42aa31d2c5 (diff)
downloadrabbitmq-server-git-ae0c0323cc00558b54b73dd13ae792616778e939.tar.gz
handle the non-empty buffer case
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_error_logger_file_h.erl13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/rabbit_error_logger_file_h.erl b/src/rabbit_error_logger_file_h.erl
index 1aca0827fb..3db0ff2e77 100644
--- a/src/rabbit_error_logger_file_h.erl
+++ b/src/rabbit_error_logger_file_h.erl
@@ -49,13 +49,22 @@ init({File, []}) ->
%% Used only when taking over from the tty handler
init({{File, []}, _}) ->
init(File);
-init({File, {error_logger, []}}) ->
+init({File, {error_logger, Buf}}) ->
rabbit_misc:ensure_parent_dirs_exist(File),
- init_file(File, error_logger);
+ init_file(File, {error_logger, Buf});
init(File) ->
rabbit_misc:ensure_parent_dirs_exist(File),
init_file(File, []).
+init_file(File, {error_logger, Buf}) ->
+ case init_file(File, error_logger) of
+ {ok, {Fd, File, PrevHandler}} ->
+ [handle_event(Event, {Fd, File, PrevHandler})
+ || {_, Event} <- lists:reverse(Buf)],
+ {ok, {Fd, File, PrevHandler}};
+ Error ->
+ Error
+ end;
init_file(File, PrevHandler) ->
process_flag(trap_exit, true),
case file:open(File, [append]) of