File otp_src_18.3.4.5-lib-kernel-group-history.patch of Package erlang

diff -Ndurp otp_src_18.3.4.5/lib/kernel/src/group.erl otp_src_18.3.4.5-lib-kernel-group-history/lib/kernel/src/group.erl
--- otp_src_18.3.4.5/lib/kernel/src/group.erl	2017-02-01 19:32:59.000000000 +0200
+++ otp_src_18.3.4.5-lib-kernel-group-history/lib/kernel/src/group.erl	2017-06-01 19:25:54.810511884 +0300
@@ -33,7 +33,14 @@ start(Drv, Shell, Options) ->
 server(Drv, Shell, Options) ->
     process_flag(trap_exit, true),
     edlin:init(),
-    put(line_buffer, proplists:get_value(line_buffer, Options, [])),
+    put(line_buffer, case lists:keyfind(line_buffer, 1, Options) of
+                         {_, V} -> V;
+                         _ -> try
+                                  group_history:load()
+                              catch
+                                  _:_ -> []
+                              end
+                     end),
     put(read_mode, list),
     put(user_drv, Drv),
     put(expand_fun,
@@ -783,6 +790,7 @@ save_line_buffer("\n", Lines) ->
 save_line_buffer(Line, [Line|_Lines]=Lines) ->
     save_line_buffer(Lines);
 save_line_buffer(Line, Lines) ->
+    catch group_history:add(Line),
     save_line_buffer([Line|Lines]).
 
 save_line_buffer(Lines) ->
openSUSE Build Service is sponsored by