Eryk Wieliczko : msvcrt: Implement _ftime64_s and _ftime32_s.

Alexandre Julliard julliard at winehq.org
Wed Dec 29 11:14:53 CST 2010


Module: wine
Branch: master
Commit: b6acca66965bcb285de12fd0644ae06e5c8a7680
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=b6acca66965bcb285de12fd0644ae06e5c8a7680

Author: Eryk Wieliczko <ewdevel at gmail.com>
Date:   Tue Dec 28 14:24:04 2010 +0100

msvcrt: Implement _ftime64_s and _ftime32_s.

---

 dlls/msvcr100/msvcr100.spec |    4 ++--
 dlls/msvcr80/msvcr80.spec   |    4 ++--
 dlls/msvcr90/msvcr90.spec   |    4 ++--
 dlls/msvcrt/msvcrt.spec     |    4 ++--
 dlls/msvcrt/time.c          |   28 ++++++++++++++++++++++++++++
 5 files changed, 36 insertions(+), 8 deletions(-)

diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec
index 64dc69a..0d1ffa1 100644
--- a/dlls/msvcr100/msvcr100.spec
+++ b/dlls/msvcr100/msvcr100.spec
@@ -659,9 +659,9 @@
 @ cdecl -ret64 _ftelli64(ptr) msvcrt._ftelli64
 @ stub _ftelli64_nolock
 @ cdecl _ftime32(ptr) msvcrt._ftime32
-@ stub _ftime32_s
+@ cdecl _ftime32_s(ptr) msvcrt._ftime32_s
 @ cdecl _ftime64(ptr) msvcrt._ftime64
-@ stub _ftime64_s
+@ cdecl _ftime64_s(ptr) msvcrt._ftime64_s
 @ cdecl -ret64 _ftol() msvcrt._ftol
 @ cdecl _fullpath(ptr str long) msvcrt._fullpath
 @ cdecl _futime32(long ptr) msvcrt._futime32
diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec
index e28079a..da36e24 100644
--- a/dlls/msvcr80/msvcr80.spec
+++ b/dlls/msvcr80/msvcr80.spec
@@ -500,9 +500,9 @@
 @ cdecl -ret64 _ftelli64(ptr) msvcrt._ftelli64
 @ stub _ftelli64_nolock
 @ cdecl _ftime32(ptr) msvcrt._ftime32
-@ stub _ftime32_s
+@ cdecl _ftime32_s(ptr) msvcrt._ftime32_s
 @ cdecl _ftime64(ptr) msvcrt._ftime64
-@ stub _ftime64_s
+@ cdecl _ftime64_s(ptr) msvcrt._ftime64_s
 @ cdecl -ret64 _ftol() msvcrt._ftol
 @ cdecl _fullpath(ptr str long) msvcrt._fullpath
 @ cdecl _futime32(long ptr) msvcrt._futime32
diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec
index 94e32ff..578e6fb 100644
--- a/dlls/msvcr90/msvcr90.spec
+++ b/dlls/msvcr90/msvcr90.spec
@@ -492,9 +492,9 @@
 @ cdecl -ret64 _ftelli64(ptr) msvcrt._ftelli64
 @ stub _ftelli64_nolock
 @ cdecl _ftime32(ptr) msvcrt._ftime32
-@ stub _ftime32_s
+@ cdecl _ftime32_s(ptr) msvcrt._ftime32_s
 @ cdecl _ftime64(ptr) msvcrt._ftime64
-@ stub _ftime64_s
+@ cdecl _ftime64_s(ptr) msvcrt._ftime64_s
 @ cdecl -ret64 _ftol() msvcrt._ftol
 @ cdecl _fullpath(ptr str long) msvcrt._fullpath
 @ cdecl _futime32(long ptr) msvcrt._futime32
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index a12941e..efec11f 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -444,9 +444,9 @@
 @ cdecl -ret64 _ftelli64(ptr) MSVCRT__ftelli64
 @ cdecl _ftime(ptr) MSVCRT__ftime
 @ cdecl _ftime32(ptr) MSVCRT__ftime32
-# stub _ftime32_s
+@ cdecl _ftime32_s(ptr) MSVCRT__ftime32_s
 @ cdecl _ftime64(ptr) MSVCRT__ftime64
-# stub _ftime64_s
+@ cdecl _ftime64_s(ptr) MSVCRT__ftime64_s
 @ cdecl -ret64 _ftol() ntdll._ftol
 @ cdecl -ret64 _ftol2() ntdll._ftol
 @ cdecl -ret64 _ftol2_sse() ntdll._ftol #FIXME: SSE variant should be implemented
diff --git a/dlls/msvcrt/time.c b/dlls/msvcrt/time.c
index 4150156..9dc2a3e 100644
--- a/dlls/msvcrt/time.c
+++ b/dlls/msvcrt/time.c
@@ -602,6 +602,20 @@ void CDECL MSVCRT__ftime64(struct MSVCRT___timeb64 *buf)
 }
 
 /*********************************************************************
+ *		_ftime64_s (MSVCRT.@)
+ */
+int CDECL MSVCRT__ftime64_s(struct MSVCRT___timeb64 *buf)
+{
+    if( !MSVCRT_CHECK_PMT( buf != NULL ) )
+    {
+        *MSVCRT__errno() = MSVCRT_EINVAL;
+        return MSVCRT_EINVAL;
+    }
+    MSVCRT__ftime64(buf);
+    return 0;
+}
+
+/*********************************************************************
  *		_ftime32 (MSVCRT.@)
  */
 void CDECL MSVCRT__ftime32(struct MSVCRT___timeb32 *buf)
@@ -616,6 +630,20 @@ void CDECL MSVCRT__ftime32(struct MSVCRT___timeb32 *buf)
 }
 
 /*********************************************************************
+ *		_ftime32_s (MSVCRT.@)
+ */
+int CDECL MSVCRT__ftime32_s(struct MSVCRT___timeb32 *buf)
+{
+    if( !MSVCRT_CHECK_PMT( buf != NULL ) )
+    {
+        *MSVCRT__errno() = MSVCRT_EINVAL;
+        return MSVCRT_EINVAL;
+    }
+    MSVCRT__ftime32(buf);
+    return 0;
+}
+
+/*********************************************************************
  *		_ftime (MSVCRT.@)
  */
 #ifdef _WIN64




More information about the wine-cvs mailing list