diff --git a/ChangeLog b/ChangeLog index 684eb01a3a..a8efa6641f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Wed Dec 15 07:11:55 2010 Tanaka Akira <akr@fsij.org> + + * hash.c: parenthesize macro arguments. + Wed Dec 15 04:02:00 2010 KOSAKI Motohiro <kosaki.motohiro@gmail.com> * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config): diff --git a/hash.c b/hash.c index b05adc6f4d..c769e60986 100644 --- a/hash.c +++ b/hash.c @@ -2003,7 +2003,7 @@ static int path_tainted = -1; static char **origenviron; #ifdef _WIN32 -#define GET_ENVIRON(e) (e = rb_w32_get_environ()) +#define GET_ENVIRON(e) ((e) = rb_w32_get_environ()) #define FREE_ENVIRON(e) rb_w32_free_environ(e) static char **my_environ; #undef environ @@ -2019,11 +2019,11 @@ extern char **environ; #define FREE_ENVIRON(e) #endif #ifdef ENV_IGNORECASE -#define ENVMATCH(s1, s2) (STRCASECMP(s1, s2) == 0) -#define ENVNMATCH(s1, s2, n) (STRNCASECMP(s1, s2, n) == 0) +#define ENVMATCH(s1, s2) (STRCASECMP((s1), (s2)) == 0) +#define ENVNMATCH(s1, s2, n) (STRNCASECMP((s1), (s2), (n)) == 0) #else -#define ENVMATCH(n1, n2) (strcmp(n1, n2) == 0) -#define ENVNMATCH(s1, s2, n) (memcmp(s1, s2, n) == 0) +#define ENVMATCH(n1, n2) (strcmp((n1), (n2)) == 0) +#define ENVNMATCH(s1, s2, n) (memcmp((s1), (s2), (n)) == 0) #endif static VALUE