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
b540277c
Commit
b540277c
authored
Jun 12, 2014
by
Piotr Caban
Committed by
Alexandre Julliard
Jun 12, 2014
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcrt: Add _wcsxfrm_l implementation.
parent
00bce251
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
70 additions
and
12 deletions
+70
-12
msvcr100.spec
dlls/msvcr100/msvcr100.spec
+2
-2
msvcr110.spec
dlls/msvcr110/msvcr110.spec
+2
-2
msvcr70.spec
dlls/msvcr70/msvcr70.spec
+1
-1
msvcr71.spec
dlls/msvcr71/msvcr71.spec
+1
-1
msvcr80.spec
dlls/msvcr80/msvcr80.spec
+2
-2
msvcr90.spec
dlls/msvcr90/msvcr90.spec
+2
-2
msvcrt.spec
dlls/msvcrt/msvcrt.spec
+2
-2
wcs.c
dlls/msvcrt/wcs.c
+58
-0
No files found.
dlls/msvcr100/msvcr100.spec
View file @
b540277c
...
@@ -1518,7 +1518,7 @@
...
@@ -1518,7 +1518,7 @@
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@
stub
_wcsxfrm_l
@
cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT_
_wcsxfrm_l
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@ stub _wctime32_s
@ stub _wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
@ cdecl _wctime64(ptr) MSVCRT__wctime64
...
@@ -1877,7 +1877,7 @@
...
@@ -1877,7 +1877,7 @@
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@
stub wcsxfrm(ptr wstr long)
@
cdecl wcsxfrm(ptr wstr long) MSVCRT_wcsxfrm
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
...
...
dlls/msvcr110/msvcr110.spec
View file @
b540277c
...
@@ -1877,7 +1877,7 @@
...
@@ -1877,7 +1877,7 @@
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@
stub
_wcsxfrm_l
@
cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT_
_wcsxfrm_l
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@ stub _wctime32_s
@ stub _wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
@ cdecl _wctime64(ptr) MSVCRT__wctime64
...
@@ -2236,7 +2236,7 @@
...
@@ -2236,7 +2236,7 @@
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@
stub wcsxfrm(ptr wstr long)
@
cdecl wcsxfrm(ptr wstr long) MSVCRT_wcsxfrm
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
...
...
dlls/msvcr70/msvcr70.spec
View file @
b540277c
...
@@ -870,7 +870,7 @@
...
@@ -870,7 +870,7 @@
@ cdecl wcstol(wstr ptr long) ntdll.wcstol
@ cdecl wcstol(wstr ptr long) ntdll.wcstol
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@
stub wcsxfrm(ptr wstr long)
@
cdecl wcsxfrm(ptr wstr long) MSVCRT_wcsxfrm
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ varargs wprintf(wstr) MSVCRT_wprintf
@ varargs wprintf(wstr) MSVCRT_wprintf
@ varargs wscanf(wstr) MSVCRT_wscanf
@ varargs wscanf(wstr) MSVCRT_wscanf
dlls/msvcr71/msvcr71.spec
View file @
b540277c
...
@@ -866,7 +866,7 @@
...
@@ -866,7 +866,7 @@
@ cdecl wcstol(wstr ptr long) ntdll.wcstol
@ cdecl wcstol(wstr ptr long) ntdll.wcstol
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@
stub wcsxfrm(ptr wstr long)
@
cdecl wcsxfrm(ptr wstr long) MSVCRT_wcsxfrm
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ varargs wprintf(wstr) MSVCRT_wprintf
@ varargs wprintf(wstr) MSVCRT_wprintf
@ varargs wscanf(wstr) MSVCRT_wscanf
@ varargs wscanf(wstr) MSVCRT_wscanf
dlls/msvcr80/msvcr80.spec
View file @
b540277c
...
@@ -1197,7 +1197,7 @@
...
@@ -1197,7 +1197,7 @@
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@
stub
_wcsxfrm_l
@
cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT_
_wcsxfrm_l
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@ stub _wctime32_s
@ stub _wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
@ cdecl _wctime64(ptr) MSVCRT__wctime64
...
@@ -1557,7 +1557,7 @@
...
@@ -1557,7 +1557,7 @@
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@
stub wcsxfrm(ptr wstr long)
@
cdecl wcsxfrm(ptr wstr long) MSVCRT_wcsxfrm
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
...
...
dlls/msvcr90/msvcr90.spec
View file @
b540277c
...
@@ -1173,7 +1173,7 @@
...
@@ -1173,7 +1173,7 @@
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@
stub
_wcsxfrm_l
@
cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT_
_wcsxfrm_l
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@ stub _wctime32_s
@ stub _wctime32_s
@ cdecl _wctime64(ptr) MSVCRT__wctime64
@ cdecl _wctime64(ptr) MSVCRT__wctime64
...
@@ -1530,7 +1530,7 @@
...
@@ -1530,7 +1530,7 @@
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@
stub wcsxfrm(ptr wstr long)
@
cdecl wcsxfrm(ptr wstr long) MSVCRT_wcsxfrm
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
...
...
dlls/msvcrt/msvcrt.spec
View file @
b540277c
...
@@ -1134,7 +1134,7 @@
...
@@ -1134,7 +1134,7 @@
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_l(wstr ptr) MSVCRT__wcsupr_l
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s(wstr long) MSVCRT__wcsupr_s
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
@ cdecl _wcsupr_s_l(wstr long ptr) MSVCRT__wcsupr_s_l
# stub _wcsxfrm_l(ptr wstr long ptr)
@ cdecl _wcsxfrm_l(ptr wstr long ptr) MSVCRT__wcsxfrm_l
@ cdecl _wctime(ptr) MSVCRT__wctime
@ cdecl _wctime(ptr) MSVCRT__wctime
@ cdecl _wctime32(ptr) MSVCRT__wctime32
@ cdecl _wctime32(ptr) MSVCRT__wctime32
# stub _wctime32_s(ptr long ptr)
# stub _wctime32_s(ptr long ptr)
...
@@ -1509,7 +1509,7 @@
...
@@ -1509,7 +1509,7 @@
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs(ptr ptr long) MSVCRT_wcstombs
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstombs_s(ptr ptr long wstr long) MSVCRT_wcstombs_s
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@ cdecl wcstoul(wstr ptr long) MSVCRT_wcstoul
@
stub wcsxfrm(ptr wstr long)
@
cdecl wcsxfrm(ptr wstr long) MSVCRT_wcsxfrm
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctob(long) MSVCRT_wctob
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
@ cdecl wctomb_s(ptr ptr long long) MSVCRT_wctomb_s
...
...
dlls/msvcrt/wcs.c
View file @
b540277c
...
@@ -2056,3 +2056,61 @@ int CDECL MSVCRT_wcsncmp(const MSVCRT_wchar_t *str1, const MSVCRT_wchar_t *str2,
...
@@ -2056,3 +2056,61 @@ int CDECL MSVCRT_wcsncmp(const MSVCRT_wchar_t *str1, const MSVCRT_wchar_t *str2,
{
{
return
strncmpW
(
str1
,
str2
,
n
);
return
strncmpW
(
str1
,
str2
,
n
);
}
}
/*********************************************************************
* _wcsxfrm_l (MSVCRT.@)
*/
MSVCRT_size_t
CDECL
MSVCRT__wcsxfrm_l
(
MSVCRT_wchar_t
*
dest
,
const
MSVCRT_wchar_t
*
src
,
MSVCRT_size_t
len
,
MSVCRT__locale_t
locale
)
{
MSVCRT_pthreadlocinfo
locinfo
;
int
i
,
ret
;
if
(
!
MSVCRT_CHECK_PMT
(
src
))
return
INT_MAX
;
if
(
!
MSVCRT_CHECK_PMT
(
dest
||
!
len
))
return
INT_MAX
;
if
(
len
>
INT_MAX
)
{
FIXME
(
"len > INT_MAX not supported
\n
"
);
len
=
INT_MAX
;
}
if
(
!
locale
)
locinfo
=
get_locinfo
();
else
locinfo
=
locale
->
locinfo
;
if
(
!
locinfo
->
lc_handle
[
MSVCRT_LC_COLLATE
])
{
MSVCRT_wcsncpy
(
dest
,
src
,
len
);
return
strlenW
(
src
);
}
ret
=
LCMapStringW
(
locinfo
->
lc_handle
[
MSVCRT_LC_COLLATE
],
LCMAP_SORTKEY
,
src
,
-
1
,
NULL
,
0
);
if
(
!
ret
)
{
if
(
len
)
dest
[
0
]
=
0
;
*
MSVCRT__errno
()
=
MSVCRT_EILSEQ
;
return
INT_MAX
;
}
if
(
!
len
)
return
ret
-
1
;
if
(
ret
>
len
)
{
dest
[
0
]
=
0
;
*
MSVCRT__errno
()
=
MSVCRT_ERANGE
;
return
ret
-
1
;
}
ret
=
LCMapStringW
(
locinfo
->
lc_handle
[
MSVCRT_LC_COLLATE
],
LCMAP_SORTKEY
,
src
,
-
1
,
dest
,
len
)
-
1
;
for
(
i
=
ret
;
i
>=
0
;
i
--
)
dest
[
i
]
=
((
unsigned
char
*
)
dest
)[
i
];
return
ret
;
}
/*********************************************************************
* wcsxfrm (MSVCRT.@)
*/
MSVCRT_size_t
CDECL
MSVCRT_wcsxfrm
(
MSVCRT_wchar_t
*
dest
,
const
MSVCRT_wchar_t
*
src
,
MSVCRT_size_t
len
)
{
return
MSVCRT__wcsxfrm_l
(
dest
,
src
,
len
,
NULL
);
}
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