File 2132-Pass-log-format-through-from-handle.patch of Package erlang

From 93ac8d2b4b2937b9b7651b5e043c31929f3b2c7c Mon Sep 17 00:00:00 2001
From: Richard Carlsson <richardc@klarna.com>
Date: Fri, 25 Nov 2016 21:26:19 +0100
Subject: [PATCH 12/12] Pass log format through from handle()

---
 lib/kernel/src/disk_log.erl | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/lib/kernel/src/disk_log.erl b/lib/kernel/src/disk_log.erl
index 69c65c9c4..2ade7fd77 100644
--- a/lib/kernel/src/disk_log.erl
+++ b/lib/kernel/src/disk_log.erl
@@ -689,8 +689,8 @@ handle({From, {log, Format, B}}=Message, S) ->
 	    reply(From, {error, {read_only_mode, L#log.name}}, S);
 	#log{status = ok, format=external}=L when Format =:= internal ->
 	    reply(From, {error, {format_external, L#log.name}}, S);
-	#log{status = ok} ->
-	    log_loop(S, From, [B], []);
+	#log{status = ok, format=LogFormat} ->
+	    log_loop(S, From, [B], [], iolist_size(B), LogFormat);
 	#log{status = {blocked, false}}=L ->
 	    reply(From, {error, {blocked_log, L#log.name}}, S);
 	#log{blocked_by = From}=L ->
@@ -706,8 +706,8 @@ handle({alog, Format, B}=Message, S) ->
 	#log{status = ok, format = external} when Format =:= internal ->
 	    notify_owners({format_external, B}),
 	    loop(S);
-	#log{status = ok} ->
-	    log_loop(S, [], [B], []);
+	#log{status = ok, format=LogFormat} ->
+	    log_loop(S, [], [B], [], iolist_size(B), LogFormat);
 	#log{status = {blocked, false}} ->
 	    notify_owners({blocked_log, B}),
 	    loop(S);
@@ -740,8 +740,8 @@ handle({From, sync}=Message, S) ->
     case get(log) of
 	#log{mode = read_only}=L ->
 	    reply(From, {error, {read_only_mode, L#log.name}}, S);
-	#log{status = ok} ->
-            log_loop(S, [], [], [From]);
+	#log{status = ok, format=LogFormat} ->
+            log_loop(S, [], [], [From], 0, LogFormat);
 	#log{status = {blocked, false}}=L ->
 	    reply(From, {error, {blocked_log, L#log.name}}, S);
 	#log{blocked_by = From}=L ->
@@ -1006,9 +1006,6 @@ enqueue(Message, #state{queue = Queue}=S) ->
 
 -define(MAX_LOOK_AHEAD, 64*1024).
 
-log_loop(S, Pids, Bins, Sync) ->
-    log_loop(S, Pids, Bins, Sync, iolist_size(Bins), (get(log))#log.format).
-
 %% Inlined.
 log_loop(#state{cache_error = CE}=S, Pids, _Bins, _Sync, _Sz, _F) when CE =/= ok ->
     loop(cache_error(S, Pids));
-- 
2.11.0

openSUSE Build Service is sponsored by