[PATCH 07/15] lirc_dev: simplify if statement in lirc_add_to_buf
From: Andi Shyti
Date: Wed Jun 29 2016 - 09:23:26 EST
The whole function is inside an 'if' statement
("if (ir->d.add_to_buf)").
Check the opposite of that statement at the beginning and exit,
this way we can have one level less of indentation.
Signed-off-by: Andi Shyti <andi.shyti@xxxxxxxxxxx>
---
drivers/media/rc/lirc_dev.c | 33 ++++++++++++++++-----------------
1 file changed, 16 insertions(+), 17 deletions(-)
diff --git a/drivers/media/rc/lirc_dev.c b/drivers/media/rc/lirc_dev.c
index cc00b9a..d63ff85 100644
--- a/drivers/media/rc/lirc_dev.c
+++ b/drivers/media/rc/lirc_dev.c
@@ -95,27 +95,26 @@ static void lirc_irctl_cleanup(struct irctl *ir)
*/
static int lirc_add_to_buf(struct irctl *ir)
{
- if (ir->d.add_to_buf) {
- int res = -ENODATA;
- int got_data = 0;
+ int res;
+ int got_data = 0;
- /*
- * service the device as long as it is returning
- * data and we have space
- */
- do {
- res = ir->d.add_to_buf(ir->d.data, ir->buf);
- if (!res)
- got_data++;
- } while (!res);
+ if (!ir->d.add_to_buf)
+ return 0;
- if (res == -ENODEV)
- kthread_stop(ir->task);
+ /*
+ * service the device as long as it is returning
+ * data and we have space
+ */
+ do {
+ res = ir->d.add_to_buf(ir->d.data, ir->buf);
+ if (!res)
+ got_data++;
+ } while (!res);
- return got_data ? 0 : res;
- }
+ if (res == -ENODEV)
+ kthread_stop(ir->task);
- return 0;
+ return got_data ? 0 : res;
}
/* main function of the polling thread
--
2.8.1