summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--include/ruby/missing.h14
-rw-r--r--missing/explicit_bzero.c7
-rw-r--r--version.h10
4 files changed, 20 insertions, 18 deletions
diff --git a/ChangeLog b/ChangeLog
index f4a56b75ca..a960725df8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Tue Jan 12 15:21:00 2016 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * include/ruby/missing.h (explicit_bzero_by_memset_s): remove
+ inline implementation by memset_s, which needs a macro before
+ including headers and can cause problems in extension libraries
+ by the order of the macro and headers.
+
Thu Dec 24 23:01:57 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* NEWS: added entry for CGI.escapeHTML optimization.
diff --git a/include/ruby/missing.h b/include/ruby/missing.h
index 8db33496ab..97091606b0 100644
--- a/include/ruby/missing.h
+++ b/include/ruby/missing.h
@@ -18,10 +18,6 @@ extern "C" {
#endif
#endif
-#ifndef __STDC_WANT_LIB_EXT1__
-#define __STDC_WANT_LIB_EXT1__ 1
-#endif
-
#include "ruby/config.h"
#include <stddef.h>
#include <math.h> /* for INFINITY and NAN */
@@ -248,15 +244,7 @@ RUBY_EXTERN void setproctitle(const char *fmt, ...);
#ifndef HAVE_EXPLICIT_BZERO
RUBY_EXTERN void explicit_bzero(void *b, size_t len);
-# ifdef HAVE_MEMSET_S
-# include <string.h>
-static inline void
-explicit_bzero_by_memset_s(void *b, size_t len)
-{
- memset_s(b, len, 0, len);
-}
-# define explicit_bzero(b, len) explicit_bzero_by_memset_s(b, len)
-# elif defined SecureZeroMemory
+# if defined SecureZeroMemory
# define explicit_bzero(b, len) SecureZeroMemory(b, len)
# endif
#endif
diff --git a/missing/explicit_bzero.c b/missing/explicit_bzero.c
index 2409deca20..a7ff9cb517 100644
--- a/missing/explicit_bzero.c
+++ b/missing/explicit_bzero.c
@@ -1,5 +1,12 @@
+#ifndef __STDC_WANT_LIB_EXT1__
+#define __STDC_WANT_LIB_EXT1__ 1
+#endif
+
#include "ruby/missing.h"
#include <string.h>
+#ifdef HAVE_MEMSET_S
+# include <string.h>
+#endif
#ifdef _WIN32
#include <windows.h>
diff --git a/version.h b/version.h
index b79f81b93c..3e58a42538 100644
--- a/version.h
+++ b/version.h
@@ -1,10 +1,10 @@
#define RUBY_VERSION "2.3.0"
-#define RUBY_RELEASE_DATE "2015-12-25"
-#define RUBY_PATCHLEVEL 2
+#define RUBY_RELEASE_DATE "2016-01-12"
+#define RUBY_PATCHLEVEL 3
-#define RUBY_RELEASE_YEAR 2015
-#define RUBY_RELEASE_MONTH 12
-#define RUBY_RELEASE_DAY 25
+#define RUBY_RELEASE_YEAR 2016
+#define RUBY_RELEASE_MONTH 1
+#define RUBY_RELEASE_DAY 12
#include "ruby/version.h"