Skip to content
This repository was archived by the owner on Mar 12, 2023. It is now read-only.

Commit 081aeaa

Browse files
committed
Sleep only once after exiting
1 parent f982e10 commit 081aeaa

File tree

3 files changed

+4
-7
lines changed

3 files changed

+4
-7
lines changed

Gemfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ gem 'tty-markdown', '~>0.7.0'
2020
group :test do
2121
gem 'activerecord'
2222
gem 'parallel_tests'
23-
gem 'reline'
23+
gem 'reline', require: false
2424
gem 'rspec-retry'
2525
gem 'simplecov', require: false
2626
gem 'sqlite3'

lib/ruby_jard/repl_interceptor.rb

+2-6
Original file line numberDiff line numberDiff line change
@@ -72,12 +72,8 @@ def start
7272
end
7373

7474
def stop
75+
sleep OUTPUT_TICK * 2 if interceptable?
7576
@key_listen_thread&.exit if @key_listen_thread&.alive?
76-
if interceptable?
77-
sleep OUTPUT_TICK until @state.exited?
78-
else
79-
@state.exited!
80-
end
8177
end
8278

8379
def dispatch_command(command)
@@ -166,7 +162,7 @@ def output_bridge
166162
if @output_reader.ready?
167163
write_output(@output_reader.read_nonblock(2048))
168164
else
169-
@state.exited!
165+
sleep OUTPUT_TICK
170166
end
171167
elsif @state.exited?
172168
sleep OUTPUT_TICK

lib/ruby_jard/repl_manager.rb

+1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ def repl(current_binding)
3737
@interceptor.stop
3838
@pry_proxy.stop
3939
set_console_cooked!
40+
@state.exited!
4041
end
4142

4243
private

0 commit comments

Comments
 (0)