[02/14] rc-core.h: Surround macro with do {} while (0)

Message ID 83cc61d8e120e2b18fe69bc85a6dafe9174ad2be.1313966089.git.joe@perches.com (mailing list archive)
State Superseded, archived
Headers

Commit Message

Joe Perches Aug. 21, 2011, 10:56 p.m. UTC
  Macros coded with if statements should be do { if... } while (0)
so the macros can be used in other if tests.

Use ##__VA_ARGS__ for variadic macro as well.

Signed-off-by: Joe Perches <joe@perches.com>
---
 include/media/rc-core.h |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)
  

Patch

diff --git a/include/media/rc-core.h b/include/media/rc-core.h
index b1f19b7..b0c494a 100644
--- a/include/media/rc-core.h
+++ b/include/media/rc-core.h
@@ -23,8 +23,11 @@ 
 #include <media/rc-map.h>
 
 extern int rc_core_debug;
-#define IR_dprintk(level, fmt, arg...)	if (rc_core_debug >= level) \
-	printk(KERN_DEBUG "%s: " fmt , __func__, ## arg)
+#define IR_dprintk(level, fmt, ...)				\
+do {								\
+	if (rc_core_debug >= level)				\
+		pr_debug("%s: " fmt, __func__, ##__VA_ARGS__);	\
+} while (0)
 
 enum rc_driver_type {
 	RC_DRIVER_SCANCODE = 0,	/* Driver or hardware generates a scancode */