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
3ebc80f1
Commit
3ebc80f1
authored
Nov 17, 2021
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcrt: Don't forward itoa() functions to ntdll.
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
68559674
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
340 additions
and
131 deletions
+340
-131
crtdll.spec
dlls/crtdll/crtdll.spec
+4
-4
msvcr100.spec
dlls/msvcr100/msvcr100.spec
+9
-9
msvcr110.spec
dlls/msvcr110/msvcr110.spec
+9
-9
msvcr120.spec
dlls/msvcr120/msvcr120.spec
+9
-9
msvcr70.spec
dlls/msvcr70/msvcr70.spec
+9
-9
msvcr71.spec
dlls/msvcr71/msvcr71.spec
+9
-9
msvcr80.spec
dlls/msvcr80/msvcr80.spec
+9
-9
msvcr90.spec
dlls/msvcr90/msvcr90.spec
+9
-9
msvcrt.spec
dlls/msvcrt/msvcrt.spec
+9
-9
string.c
dlls/msvcrt/string.c
+237
-28
msvcrtd.spec
dlls/msvcrtd/msvcrtd.spec
+9
-9
ucrtbase.spec
dlls/ucrtbase/ucrtbase.spec
+18
-18
No files found.
dlls/crtdll/crtdll.spec
View file @
3ebc80f1
...
...
@@ -170,7 +170,7 @@
@ cdecl _ismbstrail(ptr ptr)
@ cdecl _isnan(double)
@ cdecl _itoa(long ptr long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _j0(double)
@ cdecl _j1(double)
@ cdecl _jn(long double)
...
...
@@ -184,8 +184,8 @@
@ cdecl _lrotr(long long) MSVCRT__lrotr
@ cdecl _lsearch(ptr ptr ptr long ptr)
@ cdecl _lseek(long long long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltoa(long ptr long)
@ cdecl _ltow(long ptr long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _matherr(ptr)
@ cdecl _mbbtombc(long)
...
...
@@ -315,7 +315,7 @@
@ cdecl _toupper(long)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultoa(long ptr long)
@ cdecl _umask(long)
@ cdecl _ungetch(long)
@ cdecl _unlink(str)
...
...
dlls/msvcr100/msvcr100.spec
View file @
3ebc80f1
...
...
@@ -927,9 +927,9 @@
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _hypotf(float float)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64toa_s(int64 ptr long long)
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64tow(int64 ptr long)
@ cdecl _i64tow_s(int64 ptr long long)
@ stub _initptd
@ cdecl _initterm(ptr ptr)
...
...
@@ -1033,7 +1033,7 @@
@ cdecl _isxdigit_l(long ptr)
@ cdecl _itoa(long ptr long)
@ cdecl _itoa_s(long ptr long long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _itow_s(long ptr long long)
@ cdecl _j0(double)
@ cdecl _j1(double)
...
...
@@ -1061,9 +1061,9 @@
@ stub _lsearch_s
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltoa(long ptr long)
@ cdecl _ltoa_s(long ptr long long)
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltow(long ptr long)
@ cdecl _ltow_s(long ptr long long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _makepath_s(ptr long str str str str)
...
...
@@ -1399,13 +1399,13 @@
@ cdecl _towupper_l(long ptr)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64toa_s(int64 ptr long long)
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ui64tow_s(int64 ptr long long)
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultoa(long ptr long)
@ cdecl _ultoa_s(long ptr long long)
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ultow(long ptr long)
@ cdecl _ultow_s(long ptr long long)
@ cdecl _umask(long)
@ stub _umask_s
...
...
dlls/msvcr110/msvcr110.spec
View file @
3ebc80f1
...
...
@@ -1273,9 +1273,9 @@
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _hypotf(float float)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64toa_s(int64 ptr long long)
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64tow(int64 ptr long)
@ cdecl _i64tow_s(int64 ptr long long)
@ stub _initptd
@ cdecl _initterm(ptr ptr)
...
...
@@ -1379,7 +1379,7 @@
@ cdecl _isxdigit_l(long ptr)
@ cdecl _itoa(long ptr long)
@ cdecl _itoa_s(long ptr long long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _itow_s(long ptr long long)
@ cdecl _j0(double)
@ cdecl _j1(double)
...
...
@@ -1418,9 +1418,9 @@
@ stub _lsearch_s
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltoa(long ptr long)
@ cdecl _ltoa_s(long ptr long long)
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltow(long ptr long)
@ cdecl _ltow_s(long ptr long long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _makepath_s(ptr long str str str str)
...
...
@@ -1756,13 +1756,13 @@
@ cdecl _towupper_l(long ptr)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64toa_s(int64 ptr long long)
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ui64tow_s(int64 ptr long long)
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultoa(long ptr long)
@ cdecl _ultoa_s(long ptr long long)
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ultow(long ptr long)
@ cdecl _ultow_s(long ptr long long)
@ cdecl _umask(long)
@ stub _umask_s
...
...
dlls/msvcr120/msvcr120.spec
View file @
3ebc80f1
...
...
@@ -1273,9 +1273,9 @@
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _hypotf(float float)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64toa_s(int64 ptr long long)
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64tow(int64 ptr long)
@ cdecl _i64tow_s(int64 ptr long long)
@ stub _initptd
@ cdecl _initterm(ptr ptr)
...
...
@@ -1385,7 +1385,7 @@
@ cdecl _isxdigit_l(long ptr)
@ cdecl _itoa(long ptr long)
@ cdecl _itoa_s(long ptr long long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _itow_s(long ptr long long)
@ cdecl _j0(double)
@ cdecl _j1(double)
...
...
@@ -1428,9 +1428,9 @@
@ stub _lsearch_s
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltoa(long ptr long)
@ cdecl _ltoa_s(long ptr long long)
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltow(long ptr long)
@ cdecl _ltow_s(long ptr long long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _makepath_s(ptr long str str str str)
...
...
@@ -1773,13 +1773,13 @@
@ cdecl _towupper_l(long ptr)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64toa_s(int64 ptr long long)
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ui64tow_s(int64 ptr long long)
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultoa(long ptr long)
@ cdecl _ultoa_s(long ptr long long)
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ultow(long ptr long)
@ cdecl _ultow_s(long ptr long long)
@ cdecl _umask(long)
@ stub _umask_s
...
...
dlls/msvcr70/msvcr70.spec
View file @
3ebc80f1
...
...
@@ -357,8 +357,8 @@
@ stub _heapused(ptr ptr)
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64tow(int64 ptr long)
@ cdecl _initterm(ptr ptr)
@ stub -arch=i386 _inp(long)
@ stub -arch=i386 _inpd(long)
...
...
@@ -397,7 +397,7 @@
@ cdecl _ismbstrail(ptr ptr)
@ cdecl _isnan(double)
@ cdecl _itoa(long ptr long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _j0(double)
@ cdecl _j1(double)
@ cdecl _jn(long double)
...
...
@@ -415,8 +415,8 @@
@ cdecl _lsearch(ptr ptr ptr long ptr)
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltoa(long ptr long)
@ cdecl _ltow(long ptr long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _mbbtombc(long)
@ cdecl _mbbtype(long long)
...
...
@@ -574,10 +574,10 @@
@ cdecl _toupper(long)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ultoa(long ptr long)
@ cdecl _ultow(long ptr long)
@ cdecl _umask(long)
@ cdecl _ungetch(long)
@ cdecl _ungetwch(long)
...
...
dlls/msvcr71/msvcr71.spec
View file @
3ebc80f1
...
...
@@ -352,8 +352,8 @@
@ stub _heapused(ptr ptr)
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64tow(int64 ptr long)
@ cdecl _initterm(ptr ptr)
@ stub -arch=i386 _inp(long)
@ stub -arch=i386 _inpd(long)
...
...
@@ -392,7 +392,7 @@
@ cdecl _ismbstrail(ptr ptr)
@ cdecl _isnan(double)
@ cdecl _itoa(long ptr long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _j0(double)
@ cdecl _j1(double)
@ cdecl _jn(long double)
...
...
@@ -410,8 +410,8 @@
@ cdecl _lsearch(ptr ptr ptr long ptr)
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltoa(long ptr long)
@ cdecl _ltow(long ptr long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _mbbtombc(long)
@ cdecl _mbbtype(long long)
...
...
@@ -570,10 +570,10 @@
@ cdecl _toupper(long)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ultoa(long ptr long)
@ cdecl _ultow(long ptr long)
@ cdecl _umask(long)
@ cdecl _ungetch(long)
@ cdecl _ungetwch(long)
...
...
dlls/msvcr80/msvcr80.spec
View file @
3ebc80f1
...
...
@@ -600,9 +600,9 @@
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _hypotf(float float)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64toa_s(int64 ptr long long)
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64tow(int64 ptr long)
@ cdecl _i64tow_s(int64 ptr long long)
@ stub _initptd
@ cdecl _initterm(ptr ptr)
...
...
@@ -705,7 +705,7 @@
@ cdecl _isxdigit_l(long ptr)
@ cdecl _itoa(long ptr long)
@ cdecl _itoa_s(long ptr long long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _itow_s(long ptr long long)
@ cdecl _j0(double)
@ cdecl _j1(double)
...
...
@@ -733,9 +733,9 @@
@ stub _lsearch_s
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltoa(long ptr long)
@ cdecl _ltoa_s(long ptr long long)
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltow(long ptr long)
@ cdecl _ltow_s(long ptr long long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _makepath_s(ptr long str str str str)
...
...
@@ -1079,13 +1079,13 @@
@ cdecl _towupper_l(long ptr)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64toa_s(int64 ptr long long)
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ui64tow_s(int64 ptr long long)
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultoa(long ptr long)
@ cdecl _ultoa_s(long ptr long long)
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ultow(long ptr long)
@ cdecl _ultow_s(long ptr long long)
@ cdecl _umask(long)
@ stub _umask_s
...
...
dlls/msvcr90/msvcr90.spec
View file @
3ebc80f1
...
...
@@ -578,9 +578,9 @@
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _hypotf(float float)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64toa_s(int64 ptr long long)
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64tow(int64 ptr long)
@ cdecl _i64tow_s(int64 ptr long long)
@ stub _initptd
@ cdecl _initterm(ptr ptr)
...
...
@@ -683,7 +683,7 @@
@ cdecl _isxdigit_l(long ptr)
@ cdecl _itoa(long ptr long)
@ cdecl _itoa_s(long ptr long long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _itow_s(long ptr long long)
@ cdecl _j0(double)
@ cdecl _j1(double)
...
...
@@ -711,9 +711,9 @@
@ stub _lsearch_s
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltoa(long ptr long)
@ cdecl _ltoa_s(long ptr long long)
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltow(long ptr long)
@ cdecl _ltow_s(long ptr long long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _makepath_s(ptr long str str str str)
...
...
@@ -1054,13 +1054,13 @@
@ cdecl _towupper_l(long ptr)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64toa_s(int64 ptr long long)
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ui64tow_s(int64 ptr long long)
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultoa(long ptr long)
@ cdecl _ultoa_s(long ptr long long)
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ultow(long ptr long)
@ cdecl _ultow_s(long ptr long long)
@ cdecl _umask(long)
@ stub _umask_s
...
...
dlls/msvcrt/msvcrt.spec
View file @
3ebc80f1
...
...
@@ -551,9 +551,9 @@
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _hypotf(float float)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64toa_s(int64 ptr long long)
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64tow(int64 ptr long)
@ cdecl _i64tow_s(int64 ptr long long)
@ cdecl _initterm(ptr ptr)
@ cdecl _initterm_e(ptr ptr)
...
...
@@ -650,7 +650,7 @@
@ cdecl _isxdigit_l(long ptr)
@ cdecl _itoa(long ptr long)
@ cdecl _itoa_s(long ptr long long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _itow_s(long ptr long long)
@ cdecl _j0(double)
@ cdecl _j1(double)
...
...
@@ -678,9 +678,9 @@
# stub _lsearch_s(ptr ptr ptr long ptr ptr)
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltoa(long ptr long)
@ cdecl _ltoa_s(long ptr long long)
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltow(long ptr long)
@ cdecl _ltow_s(long ptr long long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _makepath_s(ptr long str str str str)
...
...
@@ -1016,13 +1016,13 @@
@ cdecl _towupper_l(long ptr)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64toa_s(int64 ptr long long)
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ui64tow_s(int64 ptr long long)
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultoa(long ptr long)
@ cdecl _ultoa_s(long ptr long long)
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ultow(long ptr long)
@ cdecl _ultow_s(long ptr long long)
@ cdecl _umask(long)
# stub _umask_s(long ptr)
...
...
dlls/msvcrt/string.c
View file @
3ebc80f1
...
...
@@ -1922,26 +1922,7 @@ static int ltoa_helper(__msvcrt_long value, char *str, size_t size, int radix)
return
0
;
}
/*********************************************************************
* _ltoa_s (MSVCRT.@)
*/
int
CDECL
_ltoa_s
(
__msvcrt_long
value
,
char
*
str
,
size_t
size
,
int
radix
)
{
if
(
!
MSVCRT_CHECK_PMT
(
str
!=
NULL
))
return
EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
size
>
0
))
return
EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
radix
>=
2
&&
radix
<=
36
))
{
str
[
0
]
=
'\0'
;
return
EINVAL
;
}
return
ltoa_helper
(
value
,
str
,
size
,
radix
);
}
/*********************************************************************
* _ltow_s (MSVCRT.@)
*/
int
CDECL
_ltow_s
(
__msvcrt_long
value
,
wchar_t
*
str
,
size_t
size
,
int
radix
)
static
int
ltow_helper
(
__msvcrt_long
value
,
wchar_t
*
str
,
size_t
size
,
int
radix
)
{
__msvcrt_ulong
val
;
unsigned
int
digit
;
...
...
@@ -1949,14 +1930,6 @@ int CDECL _ltow_s(__msvcrt_long value, wchar_t *str, size_t size, int radix)
wchar_t
buffer
[
33
],
*
pos
;
size_t
len
;
if
(
!
MSVCRT_CHECK_PMT
(
str
!=
NULL
))
return
EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
size
>
0
))
return
EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
radix
>=
2
&&
radix
<=
36
))
{
str
[
0
]
=
'\0'
;
return
EINVAL
;
}
if
(
value
<
0
&&
radix
==
10
)
{
is_negative
=
TRUE
;
...
...
@@ -2014,6 +1987,38 @@ int CDECL _ltow_s(__msvcrt_long value, wchar_t *str, size_t size, int radix)
}
/*********************************************************************
* _ltoa_s (MSVCRT.@)
*/
int
CDECL
_ltoa_s
(
__msvcrt_long
value
,
char
*
str
,
size_t
size
,
int
radix
)
{
if
(
!
MSVCRT_CHECK_PMT
(
str
!=
NULL
))
return
EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
size
>
0
))
return
EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
radix
>=
2
&&
radix
<=
36
))
{
str
[
0
]
=
'\0'
;
return
EINVAL
;
}
return
ltoa_helper
(
value
,
str
,
size
,
radix
);
}
/*********************************************************************
* _ltow_s (MSVCRT.@)
*/
int
CDECL
_ltow_s
(
__msvcrt_long
value
,
wchar_t
*
str
,
size_t
size
,
int
radix
)
{
if
(
!
MSVCRT_CHECK_PMT
(
str
!=
NULL
))
return
EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
size
>
0
))
return
EINVAL
;
if
(
!
MSVCRT_CHECK_PMT
(
radix
>=
2
&&
radix
<=
36
))
{
str
[
0
]
=
'\0'
;
return
EINVAL
;
}
return
ltow_helper
(
value
,
str
,
size
,
radix
);
}
/*********************************************************************
* _itoa_s (MSVCRT.@)
*/
int
CDECL
_itoa_s
(
int
value
,
char
*
str
,
size_t
size
,
int
radix
)
...
...
@@ -2030,6 +2035,14 @@ char* CDECL _itoa(int value, char *str, int radix)
}
/*********************************************************************
* _ltoa (MSVCRT.@)
*/
char
*
CDECL
_ltoa
(
__msvcrt_long
value
,
char
*
str
,
int
radix
)
{
return
ltoa_helper
(
value
,
str
,
SIZE_MAX
,
radix
)
?
NULL
:
str
;
}
/*********************************************************************
* _itow_s (MSVCRT.@)
*/
int
CDECL
_itow_s
(
int
value
,
wchar_t
*
str
,
size_t
size
,
int
radix
)
...
...
@@ -2038,6 +2051,202 @@ int CDECL _itow_s(int value, wchar_t *str, size_t size, int radix)
}
/*********************************************************************
* _itow (MSVCRT.@)
*/
wchar_t
*
CDECL
_itow
(
int
value
,
wchar_t
*
str
,
int
radix
)
{
return
ltow_helper
(
value
,
str
,
SIZE_MAX
,
radix
)
?
NULL
:
str
;
}
/*********************************************************************
* _ltow (MSVCRT.@)
*/
wchar_t
*
CDECL
_ltow
(
__msvcrt_long
value
,
wchar_t
*
str
,
int
radix
)
{
return
ltow_helper
(
value
,
str
,
SIZE_MAX
,
radix
)
?
NULL
:
str
;
}
/*********************************************************************
* _ultoa (MSVCRT.@)
*/
char
*
CDECL
_ultoa
(
__msvcrt_ulong
value
,
char
*
str
,
int
radix
)
{
char
buffer
[
33
],
*
pos
;
pos
=
&
buffer
[
32
];
*
pos
=
'\0'
;
do
{
int
digit
=
value
%
radix
;
value
/=
radix
;
if
(
digit
<
10
)
*--
pos
=
'0'
+
digit
;
else
*--
pos
=
'a'
+
digit
-
10
;
}
while
(
value
!=
0
);
memcpy
(
str
,
pos
,
buffer
+
33
-
pos
);
return
str
;
}
/*********************************************************************
* _ui64toa (MSVCRT.@)
*/
char
*
CDECL
_ui64toa
(
unsigned
__int64
value
,
char
*
str
,
int
radix
)
{
char
buffer
[
65
],
*
pos
;
pos
=
&
buffer
[
64
];
*
pos
=
'\0'
;
do
{
int
digit
=
value
%
radix
;
value
/=
radix
;
if
(
digit
<
10
)
*--
pos
=
'0'
+
digit
;
else
*--
pos
=
'a'
+
digit
-
10
;
}
while
(
value
!=
0
);
memcpy
(
str
,
pos
,
buffer
+
65
-
pos
);
return
str
;
}
/*********************************************************************
* _ultow (MSVCRT.@)
*/
wchar_t
*
CDECL
_ultow
(
__msvcrt_ulong
value
,
wchar_t
*
str
,
int
radix
)
{
wchar_t
buffer
[
33
],
*
pos
;
pos
=
&
buffer
[
32
];
*
pos
=
'\0'
;
do
{
int
digit
=
value
%
radix
;
value
/=
radix
;
if
(
digit
<
10
)
*--
pos
=
'0'
+
digit
;
else
*--
pos
=
'a'
+
digit
-
10
;
}
while
(
value
!=
0
);
memcpy
(
str
,
pos
,
(
buffer
+
33
-
pos
)
*
sizeof
(
wchar_t
));
return
str
;
}
/*********************************************************************
* _ui64tow (MSVCRT.@)
*/
wchar_t
*
CDECL
_ui64tow
(
unsigned
__int64
value
,
wchar_t
*
str
,
int
radix
)
{
wchar_t
buffer
[
65
],
*
pos
;
pos
=
&
buffer
[
64
];
*
pos
=
'\0'
;
do
{
int
digit
=
value
%
radix
;
value
/=
radix
;
if
(
digit
<
10
)
*--
pos
=
'0'
+
digit
;
else
*--
pos
=
'a'
+
digit
-
10
;
}
while
(
value
!=
0
);
memcpy
(
str
,
pos
,
(
buffer
+
65
-
pos
)
*
sizeof
(
wchar_t
));
return
str
;
}
/*********************************************************************
* _i64toa (MSVCRT.@)
*/
char
*
CDECL
_i64toa
(
__int64
value
,
char
*
str
,
int
radix
)
{
unsigned
__int64
val
;
BOOL
is_negative
;
char
buffer
[
65
],
*
pos
;
if
(
value
<
0
&&
radix
==
10
)
{
is_negative
=
TRUE
;
val
=
-
value
;
}
else
{
is_negative
=
FALSE
;
val
=
value
;
}
pos
=
buffer
+
64
;
*
pos
=
'\0'
;
do
{
int
digit
=
val
%
radix
;
val
/=
radix
;
if
(
digit
<
10
)
*--
pos
=
'0'
+
digit
;
else
*--
pos
=
'a'
+
digit
-
10
;
}
while
(
val
!=
0
);
if
(
is_negative
)
*--
pos
=
'-'
;
memcpy
(
str
,
pos
,
buffer
+
65
-
pos
);
return
str
;
}
/*********************************************************************
* _i64tow (MSVCRT.@)
*/
wchar_t
*
CDECL
_i64tow
(
__int64
value
,
wchar_t
*
str
,
int
radix
)
{
unsigned
__int64
val
;
BOOL
is_negative
;
wchar_t
buffer
[
65
],
*
pos
;
if
(
value
<
0
&&
radix
==
10
)
{
is_negative
=
TRUE
;
val
=
-
value
;
}
else
{
is_negative
=
FALSE
;
val
=
value
;
}
pos
=
buffer
+
64
;
*
pos
=
'\0'
;
do
{
int
digit
=
val
%
radix
;
val
/=
radix
;
if
(
digit
<
10
)
*--
pos
=
'0'
+
digit
;
else
*--
pos
=
'a'
+
digit
-
10
;
}
while
(
val
!=
0
);
if
(
is_negative
)
*--
pos
=
'-'
;
memcpy
(
str
,
pos
,
(
buffer
+
65
-
pos
)
*
sizeof
(
wchar_t
));
return
str
;
}
/*********************************************************************
* _ui64toa_s (MSVCRT.@)
*/
int
CDECL
_ui64toa_s
(
unsigned
__int64
value
,
char
*
str
,
...
...
dlls/msvcrtd/msvcrtd.spec
View file @
3ebc80f1
...
...
@@ -334,8 +334,8 @@
@ stub _heapused(ptr ptr)
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64tow(int64 ptr long)
@ cdecl _initterm(ptr ptr)
@ stub -arch=i386 _inp(long)
@ stub -arch=i386 _inpd(long)
...
...
@@ -374,7 +374,7 @@
@ cdecl _ismbstrail(ptr ptr)
@ cdecl _isnan(double)
@ cdecl _itoa(long ptr long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _j0(double)
@ cdecl _j1(double)
@ cdecl _jn(long double)
...
...
@@ -392,8 +392,8 @@
@ cdecl _lsearch(ptr ptr ptr long ptr)
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltoa(long ptr long)
@ cdecl _ltow(long ptr long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _malloc_dbg(long) malloc
@ cdecl _mbbtombc(long)
...
...
@@ -541,10 +541,10 @@
@ cdecl _toupper(long)
@ extern _tzname MSVCRT__tzname
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ultoa(long ptr long)
@ cdecl _ultow(long ptr long)
@ cdecl _umask(long)
@ cdecl _ungetch(long)
@ cdecl _unlink(str)
...
...
dlls/ucrtbase/ucrtbase.spec
View file @
3ebc80f1
...
...
@@ -416,9 +416,9 @@
@ cdecl _heapwalk(ptr)
@ cdecl _hypot(double double)
@ cdecl _hypotf(float float)
@ cdecl _i64toa(int64 ptr long)
ntdll._i64toa
@ cdecl _i64toa(int64 ptr long)
@ cdecl _i64toa_s(int64 ptr long long)
@ cdecl _i64tow(int64 ptr long)
ntdll._i64tow
@ cdecl _i64tow(int64 ptr long)
@ cdecl _i64tow_s(int64 ptr long long)
@ cdecl _initialize_narrow_environment()
@ cdecl _initialize_onexit_table(ptr)
...
...
@@ -526,7 +526,7 @@
@ cdecl _isxdigit_l(long ptr)
@ cdecl _itoa(long ptr long)
@ cdecl _itoa_s(long ptr long long)
@ cdecl _itow(long ptr long)
ntdll._itow
@ cdecl _itow(long ptr long)
@ cdecl _itow_s(long ptr long long)
@ cdecl _j0(double)
@ cdecl _j1(double)
...
...
@@ -576,9 +576,9 @@
@ stub _lsearch_s
@ cdecl _lseek(long long long)
@ cdecl -ret64 _lseeki64(long int64 long)
@ cdecl _ltoa(long ptr long)
ntdll._ltoa
@ cdecl _ltoa(long ptr long)
@ cdecl _ltoa_s(long ptr long long)
@ cdecl _ltow(long ptr long)
ntdll._ltow
@ cdecl _ltow(long ptr long)
@ cdecl _ltow_s(long ptr long long)
@ cdecl _makepath(ptr str str str str)
@ cdecl _makepath_s(ptr long str str str str)
...
...
@@ -1026,9 +1026,9 @@
@ cdecl _o__heapmin() _heapmin
@ cdecl _o__hypot(double double) _hypot
@ cdecl _o__hypotf(float float) _hypotf
@ cdecl _o__i64toa(int64 ptr long)
ntdll.
_i64toa
@ cdecl _o__i64toa(int64 ptr long) _i64toa
@ cdecl _o__i64toa_s(int64 ptr long long) _i64toa_s
@ cdecl _o__i64tow(int64 ptr long)
ntdll.
_i64tow
@ cdecl _o__i64tow(int64 ptr long) _i64tow
@ cdecl _o__i64tow_s(int64 ptr long long) _i64tow_s
@ cdecl _o__initialize_narrow_environment() _initialize_narrow_environment
@ cdecl _o__initialize_onexit_table(ptr) _initialize_onexit_table
...
...
@@ -1104,7 +1104,7 @@
@ cdecl _o__iswctype_l(long long ptr) _iswctype_l
@ cdecl _o__itoa(long ptr long) _itoa
@ cdecl _o__itoa_s(long ptr long long) _itoa_s
@ cdecl _o__itow(long ptr long)
ntdll.
_itow
@ cdecl _o__itow(long ptr long) _itow
@ cdecl _o__itow_s(long ptr long long) _itow_s
@ cdecl _o__j0(double) _j0
@ cdecl _o__j1(double) _j1
...
...
@@ -1147,9 +1147,9 @@
@ stub _o__lsearch_s
@ cdecl _o__lseek(long long long) _lseek
@ cdecl -ret64 _o__lseeki64(long int64 long) _lseeki64
@ cdecl _o__ltoa(long ptr long)
ntdll.
_ltoa
@ cdecl _o__ltoa(long ptr long) _ltoa
@ cdecl _o__ltoa_s(long ptr long long) _ltoa_s
@ cdecl _o__ltow(long ptr long)
ntdll.
_ltow
@ cdecl _o__ltow(long ptr long) _ltow
@ cdecl _o__ltow_s(long ptr long long) _ltow_s
@ cdecl _o__makepath(ptr str str str str) _makepath
@ cdecl _o__makepath_s(ptr long str str str str) _makepath_s
...
...
@@ -1408,13 +1408,13 @@
@ cdecl _o__towlower_l(long ptr) _towlower_l
@ cdecl _o__towupper_l(long ptr) _towupper_l
@ cdecl _o__tzset() _tzset
@ cdecl _o__ui64toa(int64 ptr long)
ntdll.
_ui64toa
@ cdecl _o__ui64toa(int64 ptr long) _ui64toa
@ cdecl _o__ui64toa_s(int64 ptr long long) _ui64toa_s
@ cdecl _o__ui64tow(int64 ptr long)
ntdll.
_ui64tow
@ cdecl _o__ui64tow(int64 ptr long) _ui64tow
@ cdecl _o__ui64tow_s(int64 ptr long long) _ui64tow_s
@ cdecl _o__ultoa(long ptr long)
ntdll.
_ultoa
@ cdecl _o__ultoa(long ptr long) _ultoa
@ cdecl _o__ultoa_s(long ptr long long) _ultoa_s
@ cdecl _o__ultow(long ptr long)
ntdll.
_ultow
@ cdecl _o__ultow(long ptr long) _ultow
@ cdecl _o__ultow_s(long ptr long long) _ultow_s
@ cdecl _o__umask(long) _umask
@ stub _o__umask_s
...
...
@@ -1983,13 +1983,13 @@
@ cdecl _towlower_l(long ptr)
@ cdecl _towupper_l(long ptr)
@ cdecl _tzset()
@ cdecl _ui64toa(int64 ptr long)
ntdll._ui64toa
@ cdecl _ui64toa(int64 ptr long)
@ cdecl _ui64toa_s(int64 ptr long long)
@ cdecl _ui64tow(int64 ptr long)
ntdll._ui64tow
@ cdecl _ui64tow(int64 ptr long)
@ cdecl _ui64tow_s(int64 ptr long long)
@ cdecl _ultoa(long ptr long)
ntdll._ultoa
@ cdecl _ultoa(long ptr long)
@ cdecl _ultoa_s(long ptr long long)
@ cdecl _ultow(long ptr long)
ntdll._ultow
@ cdecl _ultow(long ptr long)
@ cdecl _ultow_s(long ptr long long)
@ cdecl _umask(long)
@ stub _umask_s
...
...
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