sr: demodevice: Make read channel non-blocking
authorLars-Peter Clausen <lars@metafoo.de>
Fri, 6 Jul 2012 21:23:30 +0000 (23:23 +0200)
committerUwe Hermann <uwe@hermann-uwe.de>
Tue, 10 Jul 2012 18:13:31 +0000 (20:13 +0200)
commit68d8c207ceac92efb88a7e6dac410e3cfbca4f32
tree2953feedef82e582ad48e86d283f7879141ef11a
parent9c5cda004ee2e2235ad374d1b6c744561888cb45
sr: demodevice: Make read channel non-blocking

Both pipe channels are currently configured as blocking. We read from the pipe
in receive_data. Since the channel is configured as blocking we'll block in
receive_data until all data has been received. receive_data will be called from
the mainloop, so as consequence the mainloop will be blocked until the demo
device has finished sampling. This is not so much of a problem if we are
sampling in blocking mode (using sr_session_run()) and the demo device is the
only device in the session, but it will fail badly for all other configurations
(e.g. multiple devices or async sampling).

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
libsigrok/hardware/demo/demo.c