aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorHans Bolinder <[email protected]>2017-10-17 14:53:23 +0200
committerHans Bolinder <[email protected]>2017-10-17 14:53:23 +0200
commit5b696724cc894691da09bef0675dde5e2c0adaa9 (patch)
treed5b5f0d8ea539ffe03040d213b2c3cb52ca877bb /lib
parent62db6a63625ef67d7474da1efc8d4f65bfd8c251 (diff)
parentfc4b103d27e447ffb439adbdf39e5fea87a27b31 (diff)
downloadotp-5b696724cc894691da09bef0675dde5e2c0adaa9.tar.gz
otp-5b696724cc894691da09bef0675dde5e2c0adaa9.tar.bz2
otp-5b696724cc894691da09bef0675dde5e2c0adaa9.zip
Merge branch 'maint'
* maint: stdlib: Make ets:i/1 exit cleaner upon ^D (old Erlang shell)
Diffstat (limited to 'lib')
-rw-r--r--lib/kernel/src/user.erl6
-rw-r--r--lib/stdlib/src/ets.erl2
2 files changed, 5 insertions, 3 deletions
diff --git a/lib/kernel/src/user.erl b/lib/kernel/src/user.erl
index a5cc7b0ec1..872e63ab53 100644
--- a/lib/kernel/src/user.erl
+++ b/lib/kernel/src/user.erl
@@ -1,7 +1,7 @@
%%
%% %CopyrightBegin%
%%
-%% Copyright Ericsson AB 1996-2016. All Rights Reserved.
+%% Copyright Ericsson AB 1996-2017. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
@@ -398,7 +398,7 @@ get_line(Prompt, Port, Q, Acc, Enc) ->
get_line_bytes(Prompt, Port, Q, Acc, Bytes, Enc);
{Port, eof} ->
put(eof, true),
- {ok, eof, []};
+ {ok, eof, queue:new()};
{io_request,From,ReplyAs,{get_geometry,_}=Req} when is_pid(From) ->
do_io_request(Req, From, ReplyAs, Port,
queue:new()),
@@ -615,7 +615,7 @@ get_chars(Prompt, M, F, Xa, Port, Q, State, Enc) ->
get_chars_bytes(State, M, F, Xa, Port, Q, Bytes, Enc);
{Port, eof} ->
put(eof, true),
- {ok, eof, []};
+ {ok, eof, queue:new()};
%%{io_request,From,ReplyAs,Request} when is_pid(From) ->
%% get_chars_req(Prompt, M, F, Xa, Port, queue:new(), State,
%% Request, From, ReplyAs);
diff --git a/lib/stdlib/src/ets.erl b/lib/stdlib/src/ets.erl
index 4858c8d13c..b6548626f3 100644
--- a/lib/stdlib/src/ets.erl
+++ b/lib/stdlib/src/ets.erl
@@ -1700,6 +1700,8 @@ choice(Height, Width, P, Mode, Tab, Key, Turn, Opos) ->
io:format("~ts\n", [ErrorString]),
choice(Height, Width, P, Mode, Tab, Key, Turn, Opos)
end;
+ eof ->
+ ok;
_ ->
choice(Height, Width, P, Mode, Tab, Key, Turn, Opos)
end.