merge revision(s) 22333,22338:

* win32/win32.c (_CrtDbgReportW): prevent from false positive
	  assertions in msvcrtd.  [ruby-core:22116]
	* win32/Makefile.sub (CRTDEFFLAGS): separated from DEFS.
	* win32/win32.c (rtc_error_handler): ignores RTC errors.
	* win32/win32.c (NtInitialize): suppress useless CRT assertions.
	  [ruby-core:22116]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@23583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
shyouhei 2009-05-26 12:15:13 +00:00
parent 6ec32b4aa5
commit 0175825cfc
4 changed files with 27 additions and 4 deletions

View file

@ -1,3 +1,8 @@
Tue May 26 21:09:21 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (_CrtDbgReportW): prevent from false positive
assertions in msvcrtd. [ruby-core:22116]
Tue May 26 21:02:13 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> Tue May 26 21:02:13 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/ostruct.rb (OpenStruct#new_ostruct_member): checks if frozen. * lib/ostruct.rb (OpenStruct#new_ostruct_member): checks if frozen.

View file

@ -2,7 +2,7 @@
#define RUBY_RELEASE_DATE "2009-05-26" #define RUBY_RELEASE_DATE "2009-05-26"
#define RUBY_VERSION_CODE 187 #define RUBY_VERSION_CODE 187
#define RUBY_RELEASE_CODE 20090526 #define RUBY_RELEASE_CODE 20090526
#define RUBY_PATCHLEVEL 163 #define RUBY_PATCHLEVEL 164
#define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8 #define RUBY_VERSION_MINOR 8

View file

@ -172,12 +172,12 @@ LDSHARED = $(LD) -LD
XCFLAGS = -DRUBY_EXPORT -I. -I$(srcdir) -I$(srcdir)/missing $(XCFLAGS) XCFLAGS = -DRUBY_EXPORT -I. -I$(srcdir) -I$(srcdir)/missing $(XCFLAGS)
!if $(MSC_VER) >= 1400 !if $(MSC_VER) >= 1400
# Prevents VC++ 2005 (cl ver 14) warnings # Prevents VC++ 2005 (cl ver 14) warnings
DEFS = -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE CRTDEFFLAGS = -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
MANIFESTTOOL = mt -nologo MANIFESTTOOL = mt -nologo
LDSHARED_1 = $(MANIFESTTOOL) -manifest $(@).manifest -outputresource:$(@);2 LDSHARED_1 = $(MANIFESTTOOL) -manifest $(@).manifest -outputresource:$(@);2
LDSHARED_2 = @$(RM) $(@:/=\).manifest LDSHARED_2 = @$(RM) $(@:/=\).manifest
!endif !endif
CPPFLAGS = $(DEFS) $(ARCHDEFS) $(CPPFLAGS) CPPFLAGS = $(CRTDEFFLAGS) $(DEFS) $(ARCHDEFS) $(CPPFLAGS)
DLDFLAGS = $(LDFLAGS) -dll DLDFLAGS = $(LDFLAGS) -dll
SOLIBS = SOLIBS =
@ -321,6 +321,10 @@ $(CONFIG_H): $(MKFILES) $(srcdir)/win32/Makefile.sub $(win_srcdir)/Makefile.sub
!if $(MSC_VER) > 1100 !if $(MSC_VER) > 1100
#define NORETURN(x) __declspec(noreturn) x #define NORETURN(x) __declspec(noreturn) x
!endif !endif
!if $(MSC_VER) >= 1300
#define DEPRECATED(x) __declspec(deprecated) x
#define NOINLINE(x) __declspec(noinline) x
!endif
#define RUBY_EXTERN extern __declspec(dllimport) #define RUBY_EXTERN extern __declspec(dllimport)
#define HAVE_DECL_SYS_NERR 1 #define HAVE_DECL_SYS_NERR 1
!if !defined(WIN32_WCE) !if !defined(WIN32_WCE)

View file

@ -27,6 +27,9 @@
#include <winbase.h> #include <winbase.h>
#include <wincon.h> #include <wincon.h>
#include <shlobj.h> #include <shlobj.h>
#if _MSC_VER >= 1400
#include <crtdbg.h>
#endif
#ifdef __MINGW32__ #ifdef __MINGW32__
#include <mswsock.h> #include <mswsock.h>
#include <mbstring.h> #include <mbstring.h>
@ -366,10 +369,17 @@ flock(int fd, int oper)
static void init_stdhandle(void); static void init_stdhandle(void);
#if _MSC_VER >= 1400 #if _MSC_VER >= 1400
static void invalid_parameter(const wchar_t *expr, const wchar_t *func, const wchar_t *file, unsigned int line, uintptr_t dummy) static void
invalid_parameter(const wchar_t *expr, const wchar_t *func, const wchar_t *file, unsigned int line, uintptr_t dummy)
{ {
// nothing to do // nothing to do
} }
static int __cdecl
rtc_error_handler(int e, const char *src, int line, const char *exe, const char *fmt, ...)
{
return 0;
}
#endif #endif
static CRITICAL_SECTION select_mutex; static CRITICAL_SECTION select_mutex;
@ -452,7 +462,9 @@ NtInitialize(int *argc, char ***argv)
#if _MSC_VER >= 1400 #if _MSC_VER >= 1400
static void set_pioinfo_extra(void); static void set_pioinfo_extra(void);
_CrtSetReportMode(_CRT_ASSERT, 0);
_set_invalid_parameter_handler(invalid_parameter); _set_invalid_parameter_handler(invalid_parameter);
_RTC_SetErrorFunc(rtc_error_handler);
set_pioinfo_extra(); set_pioinfo_extra();
#endif #endif
@ -4199,3 +4211,5 @@ rb_w32_fsopen(const char *path, const char *mode, int shflags)
return f; return f;
} }
#endif #endif
RUBY_EXTERN int __cdecl _CrtDbgReportW() {return 0;}