Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
ecac39c1
Commit
ecac39c1
authored
Sep 14, 2015
by
Piotr Caban
Committed by
Alexandre Julliard
Sep 15, 2015
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcrt: Add _wctime32_s implementation.
parent
05d2a083
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
60 additions
and
15 deletions
+60
-15
msvcr100.spec
dlls/msvcr100/msvcr100.spec
+2
-2
msvcr110.spec
dlls/msvcr110/msvcr110.spec
+2
-2
msvcr120.spec
dlls/msvcr120/msvcr120.spec
+2
-2
msvcr120_app.spec
dlls/msvcr120_app/msvcr120_app.spec
+2
-2
msvcr80.spec
dlls/msvcr80/msvcr80.spec
+2
-2
msvcr90.spec
dlls/msvcr90/msvcr90.spec
+2
-2
msvcrt.spec
dlls/msvcrt/msvcrt.spec
+2
-2
time.c
dlls/msvcrt/time.c
+46
-1
No files found.
dlls/msvcr100/msvcr100.spec
View file @
ecac39c1
...
...
@@ -1525,9 +1525,9 @@
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT__wcsxfrm_l
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@
stub
_wctime32_s
@
cdecl _wctime32_s(ptr long ptr) MSVCRT_
_wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
@
stub
_wctime64_s
@
cdecl _wctime64_s(ptr long ptr) MSVCRT_
_wctime64_s
@ cdecl _wctomb_l(ptr long ptr) MSVCRT__wctomb_l
@ cdecl _wctomb_s_l(ptr ptr long long ptr) MSVCRT__wctomb_s_l
# extern _wctype
...
...
dlls/msvcr110/msvcr110.spec
View file @
ecac39c1
...
...
@@ -1884,9 +1884,9 @@
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT__wcsxfrm_l
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@
stub
_wctime32_s
@
cdecl _wctime32_s(ptr long ptr) MSVCRT_
_wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
@
stub
_wctime64_s
@
cdecl _wctime64_s(ptr long ptr) MSVCRT_
_wctime64_s
@ cdecl _wctomb_l(ptr long ptr) MSVCRT__wctomb_l
@ cdecl _wctomb_s_l(ptr ptr long long ptr) MSVCRT__wctomb_s_l
# extern _wctype
...
...
dlls/msvcr120/msvcr120.spec
View file @
ecac39c1
...
...
@@ -1908,9 +1908,9 @@
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT__wcsxfrm_l
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@
stub
_wctime32_s
@
cdecl _wctime32_s(ptr long ptr) MSVCRT_
_wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
@
stub
_wctime64_s
@
cdecl _wctime64_s(ptr long ptr) MSVCRT_
_wctime64_s
@ cdecl _wctomb_l(ptr long ptr) MSVCRT__wctomb_l
@ cdecl _wctomb_s_l(ptr ptr long long ptr) MSVCRT__wctomb_s_l
# extern _wctype
...
...
dlls/msvcr120_app/msvcr120_app.spec
View file @
ecac39c1
...
...
@@ -1601,9 +1601,9 @@
@ cdecl _wcsupr_s_l(wstr long ptr) msvcr120._wcsupr_s_l
@ cdecl _wcsxfrm_l(ptr wstr long ptr) msvcr120._wcsxfrm_l
@ cdecl _wctime32(ptr) msvcr120._wctime32
@
stub
_wctime32_s
@
cdecl _wctime32_s(ptr long ptr) msvcr120.
_wctime32_s
@ cdecl _wctime64(ptr) msvcr120._wctime64
@
stub
_wctime64_s
@
cdecl _wctime64_s(ptr long ptr) msvcr120.
_wctime64_s
@ cdecl _wctomb_l(ptr long ptr) msvcr120._wctomb_l
@ cdecl _wctomb_s_l(ptr ptr long long ptr) msvcr120._wctomb_s_l
# extern _wctype
...
...
dlls/msvcr80/msvcr80.spec
View file @
ecac39c1
...
...
@@ -1205,9 +1205,9 @@
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT__wcsxfrm_l
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@
stub
_wctime32_s
@
cdecl _wctime32_s(ptr long ptr) MSVCRT_
_wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
@
stub
_wctime64_s
@
cdecl _wctime64_s(ptr long ptr) MSVCRT_
_wctime64_s
@ cdecl _wctomb_l(ptr long ptr) MSVCRT__wctomb_l
@ cdecl _wctomb_s_l(ptr ptr long long ptr) MSVCRT__wctomb_s_l
# extern _wctype
...
...
dlls/msvcr90/msvcr90.spec
View file @
ecac39c1
...
...
@@ -1180,9 +1180,9 @@
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT__wcsxfrm_l
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@
stub
_wctime32_s
@
cdecl _wctime32_s(ptr long ptr) MSVCRT_
_wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
@
stub
_wctime64_s
@
cdecl _wctime64_s(ptr long ptr) MSVCRT_
_wctime64_s
@ cdecl _wctomb_l(ptr long ptr) MSVCRT__wctomb_l
@ cdecl _wctomb_s_l(ptr ptr long long ptr) MSVCRT__wctomb_s_l
# extern _wctype
...
...
dlls/msvcrt/msvcrt.spec
View file @
ecac39c1
...
...
@@ -1137,9 +1137,9 @@
@ cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT__wcsxfrm_l
@ cdecl _wctime(ptr) MSVCRT__wctime
@ cdecl _wctime32(ptr) MSVCRT__wctime32
# stub _wctime32_s(ptr long ptr)
@ cdecl _wctime32_s(ptr long ptr) MSVCRT__wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
# stub _wctime64_s(ptr long ptr)
@ cdecl _wctime64_s(ptr long ptr) MSVCRT__wctime64_s
@ cdecl _wctomb_l(ptr long ptr) MSVCRT__wctomb_l
@ cdecl _wctomb_s_l(ptr ptr long long ptr) MSVCRT__wctomb_s_l
# extern _wctype
...
...
dlls/msvcrt/time.c
View file @
ecac39c1
...
...
@@ -1358,7 +1358,7 @@ int CDECL MSVCRT__wasctime_s(MSVCRT_wchar_t* time, MSVCRT_size_t size, const str
if
(
!
MSVCRT_CHECK_PMT
(
mstm
!=
NULL
))
return
MSVCRT_EINVAL
;
ret
=
MSVCRT_asctime_s
(
buffer
,
sizeof
(
buffer
),
mstm
);
if
(
!
ret
)
if
(
ret
)
return
ret
;
MultiByteToWideChar
(
CP_ACP
,
0
,
buffer
,
-
1
,
time
,
size
);
return
0
;
...
...
@@ -1469,6 +1469,51 @@ MSVCRT_wchar_t * CDECL MSVCRT__wctime(const MSVCRT___time32_t *time)
#endif
/*********************************************************************
* _wctime64_s (MSVCRT.@)
*/
int
CDECL
MSVCRT__wctime64_s
(
MSVCRT_wchar_t
*
buf
,
MSVCRT_size_t
size
,
const
MSVCRT___time64_t
*
time
)
{
struct
MSVCRT_tm
tm
;
int
ret
;
if
(
!
MSVCRT_CHECK_PMT
(
buf
!=
NULL
))
return
MSVCRT_EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
size
!=
0
))
return
MSVCRT_EINVAL
;
buf
[
0
]
=
0
;
if
(
!
MSVCRT_CHECK_PMT
(
time
!=
NULL
))
return
MSVCRT_EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
*
time
>=
0
))
return
MSVCRT_EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
*
time
<=
_MAX__TIME64_T
))
return
MSVCRT_EINVAL
;
ret
=
_localtime64_s
(
&
tm
,
time
);
if
(
ret
!=
0
)
return
ret
;
return
MSVCRT__wasctime_s
(
buf
,
size
,
&
tm
);
}
/*********************************************************************
* _wctime32_s (MSVCRT.@)
*/
int
CDECL
MSVCRT__wctime32_s
(
MSVCRT_wchar_t
*
buf
,
MSVCRT_size_t
size
,
const
MSVCRT___time32_t
*
time
)
{
struct
MSVCRT_tm
tm
;
int
ret
;
if
(
!
MSVCRT_CHECK_PMT
(
buf
!=
NULL
))
return
MSVCRT_EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
size
!=
0
))
return
MSVCRT_EINVAL
;
buf
[
0
]
=
0
;
if
(
!
MSVCRT_CHECK_PMT
(
time
!=
NULL
))
return
MSVCRT_EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
*
time
>=
0
))
return
MSVCRT_EINVAL
;
ret
=
_localtime32_s
(
&
tm
,
time
);
if
(
ret
!=
0
)
return
ret
;
return
MSVCRT__wasctime_s
(
buf
,
size
,
&
tm
);
}
/*********************************************************************
* _get_timezone (MSVCR100.@)
*/
int
CDECL
_get_timezone
(
LONG
*
timezone
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment