From a11b5acf4d9fc7e49c04cd03d3136d1a1325ac4c Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Wed, 2 Jan 2019 23:13:46 +0000 Subject: splice: fix missing F_NONBLOCK flag for single output This fixes hanging when using a single audio output for Linux users using splice. --- lib/dtas/buffer/splice.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/dtas') diff --git a/lib/dtas/buffer/splice.rb b/lib/dtas/buffer/splice.rb index c6c0ee2..281ecfd 100644 --- a/lib/dtas/buffer/splice.rb +++ b/lib/dtas/buffer/splice.rb @@ -32,7 +32,7 @@ module DTAS::Buffer::Splice # :nodoc: def broadcast_one(targets, limit = nil) # single output is always non-blocking limit ||= MAX_AT_ONCE_1 - s = SleepyPenguin.splice(@to_io, targets[0], limit, F_MOVE, TRY) + s = SleepyPenguin.splice(@to_io, targets[0], limit, F_MOVE|F_NONBLOCK, TRY) if Symbol === s targets # our one and only target blocked on write else -- cgit v1.2.3-24-ge0c7