diff options
author | holyfoot@deer.(none) <> | 2006-06-27 15:22:43 +0500 |
---|---|---|
committer | holyfoot@deer.(none) <> | 2006-06-27 15:22:43 +0500 |
commit | 1530106bacdcd268d8e4ba863d677b8b00044251 (patch) | |
tree | 4dcd683cf5ee7b072fef0b4146bc16d889ced335 /mysys | |
parent | 93210b0a28a9dfdc8b603957c7fded3dcd53667a (diff) | |
parent | 8a975f4a306dd5cfb80958fc01661b504605505c (diff) | |
download | mariadb-git-1530106bacdcd268d8e4ba863d677b8b00044251.tar.gz |
Merge mysql.com:/home/hf/work/mysql-5.0.19672
into mysql.com:/home/hf/work/mysql-5.1.clean
Diffstat (limited to 'mysys')
-rw-r--r-- | mysys/my_init.c | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/mysys/my_init.c b/mysys/my_init.c index 588bb6f46d6..dca68637161 100644 --- a/mysys/my_init.c +++ b/mysys/my_init.c @@ -246,6 +246,22 @@ void setEnvString(char *ret, const char *name, const char *value) DBUG_VOID_RETURN ; } +/* + my_paramter_handler + Invalid paramter handler we will use instead of the one "baked" into the CRT + for MSC v8. This one just prints out what invalid parameter was encountered. + By providing this routine, routines like lseek will return -1 when we expect them + to instead of crash. +*/ +void my_parameter_handler(const wchar_t * expression, const wchar_t * function, + const wchar_t * file, unsigned int line, + uintptr_t pReserved) +{ + DBUG_PRINT("my",("Expression: %s function: %s file: %s, line: %d", + expression, function, file, line)); +} + + static void my_win_init(void) { HKEY hSoftMysql ; @@ -263,12 +279,18 @@ static void my_win_init(void) setlocale(LC_CTYPE, ""); /* To get right sortorder */ -#if defined(_MSC_VER) && (_MSC_VER < 1300) +#if defined(_MSC_VER) +#if _MSC_VER < 1300 /* Clear the OS system variable TZ and avoid the 100% CPU usage Only for old versions of Visual C++ */ _putenv( "TZ=" ); +#endif +#if _MSC_VER >= 1400 + /* this is required to make crt functions return -1 appropriately */ + _set_invalid_parameter_handler(my_parameter_handler); +#endif #endif _tzset(); |