diff --git a/ChangeLog b/ChangeLog index 2d3d1c0d8f..4034ff1536 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Sun Mar 20 12:43:12 2011 Tanaka Akira + + * ext/openssl/ruby_missing.h: parenthesize macro arguments. + Tue Mar 22 13:33:22 2011 NAKAMURA, Hiroshi * ext/openssl/lib/openssl/buffering.rb: removed circular require of diff --git a/ext/openssl/ruby_missing.h b/ext/openssl/ruby_missing.h index 64b76f26b4..1c5d05baca 100644 --- a/ext/openssl/ruby_missing.h +++ b/ext/openssl/ruby_missing.h @@ -12,11 +12,11 @@ #define _OSSL_RUBY_MISSING_H_ #define rb_define_copy_func(klass, func) \ - rb_define_method(klass, "initialize_copy", func, 1) + rb_define_method((klass), "initialize_copy", (func), 1) #ifndef GetReadFile -#define FPTR_TO_FD(fptr) (fptr->fd) +#define FPTR_TO_FD(fptr) ((fptr)->fd) #else #define FPTR_TO_FD(fptr) (fileno(GetReadFile(fptr))) #endif @@ -28,14 +28,14 @@ #ifndef HAVE_RB_STR_SET_LEN /* these methods should probably be backported to 1.8 */ #define rb_str_set_len(str, length) do { \ - RSTRING(str)->ptr[length] = 0; \ - RSTRING(str)->len = length; \ + RSTRING(str)->ptr[(length)] = 0; \ + RSTRING(str)->len = (length); \ } while(0) #endif /* ! HAVE_RB_STR_SET_LEN */ #ifndef HAVE_RB_BLOCK_CALL /* the openssl module doesn't use arg[3-4] and arg2 is always rb_each */ -#define rb_block_call(arg1, arg2, arg3, arg4, arg5, arg6) rb_iterate(rb_each, arg1, arg5, arg6) +#define rb_block_call(arg1, arg2, arg3, arg4, arg5, arg6) rb_iterate(rb_each, (arg1), (arg5), (arg6)) #endif /* ! HAVE_RB_BLOCK_CALL */ #endif /* _OSSL_RUBY_MISSING_H_ */