Module: wine Branch: master Commit: 78dc7af9ce625196f05179048acccfb6765e2731 URL: http://source.winehq.org/git/wine.git/?a=commit;h=78dc7af9ce625196f05179048a...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Tue Mar 15 02:35:59 2011 +0300
msvcrt: Add __daylight() call export.
---
dlls/msvcr100/msvcr100.spec | 2 +- dlls/msvcr80/msvcr80.spec | 2 +- dlls/msvcr90/msvcr90.spec | 2 +- dlls/msvcrt/msvcrt.spec | 2 +- dlls/msvcrt/tests/time.c | 26 ++++++++++++++++++++++++++ 5 files changed, 30 insertions(+), 4 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 1570fd4..1eca092 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -392,7 +392,7 @@ @ cdecl __crtCompareStringW(long long wstr long wstr long) msvcrt.__crtCompareStringW @ cdecl __crtLCMapStringA(long long str long ptr long long long) msvcrt.__crtLCMapStringA @ cdecl __crtLCMapStringW(long long wstr long ptr long long long) msvcrt.__crtLCMapStringW -@ stub __daylight +@ cdecl __daylight() msvcrt.__daylight @ cdecl __dllonexit(ptr ptr ptr) msvcrt.__dllonexit @ cdecl __doserrno() msvcrt.__doserrno @ stub __dstbias diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 65f9510..e7b26e7 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -205,7 +205,7 @@ @ cdecl __crtGetStringTypeW(long long wstr long ptr) msvcrt.__crtGetStringTypeW @ cdecl __crtLCMapStringA(long long str long ptr long long long) msvcrt.__crtLCMapStringA @ cdecl __crtLCMapStringW(long long wstr long ptr long long long) msvcrt.__crtLCMapStringW -@ stub __daylight +@ cdecl __daylight() msvcrt.__daylight @ cdecl __dllonexit(ptr ptr ptr) msvcrt.__dllonexit @ cdecl __doserrno() msvcrt.__doserrno @ stub __dstbias diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index badfe65..9ba5bbc 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -202,7 +202,7 @@ @ cdecl __crtGetStringTypeW(long long wstr long ptr) msvcrt.__crtGetStringTypeW @ cdecl __crtLCMapStringA(long long str long ptr long long long) msvcrt.__crtLCMapStringA @ cdecl __crtLCMapStringW(long long wstr long ptr long long long) msvcrt.__crtLCMapStringW -@ stub __daylight +@ cdecl __daylight() msvcrt.__daylight @ cdecl __dllonexit(ptr ptr ptr) msvcrt.__dllonexit @ cdecl __doserrno() msvcrt.__doserrno @ stub __dstbias diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 5d07736..440eeb8 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -179,7 +179,7 @@ @ cdecl __crtGetStringTypeW(long long wstr long ptr) @ cdecl __crtLCMapStringA(long long str long ptr long long long) @ cdecl __crtLCMapStringW(long long wstr long ptr long long long) -# stub __daylight +@ cdecl __daylight() MSVCRT___p__daylight @ cdecl __dllonexit(ptr ptr ptr) @ cdecl __doserrno() MSVCRT___doserrno # stub __dstbias diff --git a/dlls/msvcrt/tests/time.c b/dlls/msvcrt/tests/time.c index a56f53c..950042c 100644 --- a/dlls/msvcrt/tests/time.c +++ b/dlls/msvcrt/tests/time.c @@ -42,6 +42,8 @@ static errno_t (__cdecl *p_strtime_s)(char*,size_t); static errno_t (__cdecl *p_strdate_s)(char*,size_t); static errno_t (__cdecl *p_localtime32_s)(struct tm*, __time32_t*); static errno_t (__cdecl *p_localtime64_s)(struct tm*, __time64_t*); +static int* (__cdecl *p__daylight)(void); +static int* (__cdecl *p___p__daylight)(void);
static void init(void) { @@ -54,6 +56,8 @@ static void init(void) p_strdate_s = (void*)GetProcAddress(hmod, "_strdate_s"); p_localtime32_s = (void*)GetProcAddress(hmod, "_localtime32_s"); p_localtime64_s = (void*)GetProcAddress(hmod, "_localtime64_s"); + p__daylight = (void*)GetProcAddress(hmod, "__daylight"); + p___p__daylight = (void*)GetProcAddress(hmod, "__p__daylight"); }
static int get_test_year(time_t *start) @@ -543,6 +547,27 @@ static void test_localtime64_s(void) tm.tm_isdst); }
+static void test_daylight(void) +{ + int *ret1, *ret2; + + if (!p__daylight) + { + win_skip("__daylight() not available\n"); + return; + } + + if (!p___p__daylight) + { + win_skip("__p__daylight not available\n"); + return; + } + + ret1 = p__daylight(); + ret2 = p___p__daylight(); + ok(ret1 && ret1 == ret2, "got %p\n", ret1); +} + START_TEST(time) { init(); @@ -557,4 +582,5 @@ START_TEST(time) test_wstrtime(); test_localtime32_s(); test_localtime64_s(); + test_daylight(); }