[PATCH] staging: gdm724x: gdm_tty: corrected macro by adding brackets

From: antoniprzybylik
Date: Tue Sep 01 2020 - 06:50:20 EST


Such macros are dangerous. Consider following example:
#define GDM_TTY_READY(gdm) (gdm && gdm->tty_dev && gdm->port.count)
GDM_TTY_READY(a + b)
This macro will be expanded in such a way:
(a + b && a + b->tty_dev && a + b->port.count)
And it will lead to errors.

Signed-off-by: Antoni Przybylik <antoni.przybylik@xxxxx>
---
drivers/staging/gdm724x/gdm_tty.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/gdm724x/gdm_tty.c b/drivers/staging/gdm724x/gdm_tty.c
index 6e813693a766..eab5c75ee5b1 100644
--- a/drivers/staging/gdm724x/gdm_tty.c
+++ b/drivers/staging/gdm724x/gdm_tty.c
@@ -27,7 +27,7 @@

#define MUX_TX_MAX_SIZE 2048

-#define GDM_TTY_READY(gdm) (gdm && gdm->tty_dev && gdm->port.count)
+#define GDM_TTY_READY(gdm) ((gdm) && (gdm)->tty_dev && (gdm)->port.count)

static struct tty_driver *gdm_driver[TTY_MAX_COUNT];
static struct gdm *gdm_table[TTY_MAX_COUNT][GDM_TTY_MINOR];
--
2.28.0