From 09dbf169e129778d25e7e69a1d87d4e00cf34505 Mon Sep 17 00:00:00 2001 From: Nithin Raju Date: Wed, 25 Nov 2015 12:16:30 -0800 Subject: [PATCH] datapath-windows: fix MIN() macro A quick implementation of MIN() didn't take into account operator precedence as shown in the following example: #include #define MYMIN(_a, _b) (_a) > (_b) ? (_b) : (_a) int main() { if (MYMIN(512, 256) < 14) { printf("buggy MYMIN\n"); } return 0; } Signed-off-by: Nithin Raju Acked-by: Russell Bryant Signed-off-by: Ben Pfaff --- datapath-windows/ovsext/Util.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapath-windows/ovsext/Util.h b/datapath-windows/ovsext/Util.h index 0bbc52b31a6..e5ba72bd86f 100644 --- a/datapath-windows/ovsext/Util.h +++ b/datapath-windows/ovsext/Util.h @@ -66,7 +66,7 @@ VOID OvsFreeAlignedMemory(VOID *ptr); VOID OvsAppendList(PLIST_ENTRY dst, PLIST_ENTRY src); -#define MIN(_a, _b) (_a) > (_b) ? (_b) : (_a) +#define MIN(_a, _b) ((_a) > (_b) ? (_b) : (_a)) #define ARRAY_SIZE(_x) ((sizeof(_x))/sizeof (_x)[0]) #define OVS_SWITCH_PORT_ID_INVALID (NDIS_SWITCH_PORT_ID)(-1)