From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ns.pmeerw.net ([87.118.82.44]:47892 "EHLO pmeerw.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751246AbaFLFAm (ORCPT ); Thu, 12 Jun 2014 01:00:42 -0400 From: Peter Meerwald To: linux-iio@vger.kernel.org Cc: jic23@kernel.org, Peter Meerwald Subject: [PATCH v2 10/12] staging:iio: Fix error handling in generic_buffer example Date: Thu, 12 Jun 2014 07:00:27 +0200 Message-Id: <1402549229-4449-11-git-send-email-pmeerw@pmeerw.net> In-Reply-To: <1402549229-4449-1-git-send-email-pmeerw@pmeerw.net> References: <1402549229-4449-1-git-send-email-pmeerw@pmeerw.net> Sender: linux-iio-owner@vger.kernel.org List-Id: linux-iio@vger.kernel.org read() does not return -EAGAIN read() returns -1 and the errno value needs to be checked for -EAGAIN Signed-off-by: Peter Meerwald --- drivers/staging/iio/Documentation/generic_buffer.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/staging/iio/Documentation/generic_buffer.c b/drivers/staging/iio/Documentation/generic_buffer.c index 40d0eca..044ea19 100644 --- a/drivers/staging/iio/Documentation/generic_buffer.c +++ b/drivers/staging/iio/Documentation/generic_buffer.c @@ -305,9 +305,12 @@ int main(int argc, char **argv) read_size = read(fp, data, toread*scan_size); - if (read_size == -EAGAIN) { - printf("nothing available\n"); - continue; + if (read_size < 0) { + if (errno == -EAGAIN) { + printf("nothing available\n"); + continue; + } else + break; } for (i = 0; i < read_size/scan_size; i++) process_scan(data + scan_size*i, -- 1.9.1