Alexandre Julliard
7726157e19
msvcrt: Use WINAPIV calling convention for variadic functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 10:20:02 +01:00
Gijs Vermeulen
7f9c2dabc3
msvcrt: Add vf[w]printf_p & vf[w]printf_p_l.
...
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-16 15:26:32 +02:00
Alex Henrie
8b6eada458
ucrtbase: Add __stdio_common_vsprintf_p.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-14 01:01:02 +02:00
Alex Henrie
5074bb9a4b
msvcrt: Note that __stdio_common functions are for ucrtbase.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-07 14:23:38 +02:00
Daniel Lehman
111637a3c6
ucrtbase: Add _iswblank_l.
...
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-04 14:54:23 +02:00
Daniel Lehman
bda232de94
msvcrt: Add _iswctype_l.
...
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-04 14:54:09 +02:00
Lauri Kenttä
96a48efeea
msvcrt: Fix space-only inputs in wcstoi64.
...
wcstoi64 sets endpos past the beginning only if some digits are found.
Signed-off-by: Lauri Kenttä <lauri.kentta@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 19:49:41 +01:00
Lauri Kenttä
5b6e1cf2de
msvcrt: Make wcstoi64 support various Unicode digits.
...
Signed-off-by: Lauri Kenttä <lauri.kentta@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 19:49:31 +01:00
Lauri Kenttä
bdd771dfa7
msvcrt: Move WCHAR-to-int conversion to a function.
...
Signed-off-by: Lauri Kenttä <lauri.kentta@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 19:48:50 +01:00
Nikolay Sivov
ff49f86fa1
ucrtbase: Added __stdio_common_vswprintf_p().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:09:18 -05:00
Nikolay Sivov
b6fd195279
ucrtbase: Added __stdio_common_vswprintf_s().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-02 09:08:28 -05:00
Nikolay Sivov
24291f2b6a
ucrtbase: Added __stdio_common_vsnwprintf_s().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-01 05:30:17 -05:00
Piotr Caban
c4ab42d88c
msvcrt: Fix C locale handling in wcstombs.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-14 19:20:21 +09:00
Piotr Caban
4ee316a997
msvcr120: Add wcstof implementation.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 15:10:20 +09:00
Piotr Caban
aff5d2c1f3
msvcrt: Don't use isdigit in places where only 0-9 digits are handled.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 15:10:20 +09:00
Rafał Harabień
ad9ab7c40b
msvcr120: Implement atoll, _atoll_l, _wtoll, _wtoll_l.
...
Signed-off-by: Rafał Harabień <rafalh1992@o2.pl>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 23:25:57 +09:00
Martin Storsjo
b9d0f5d562
ucrtbase: Implement the new printf corner case behaviour.
...
Check the option flags whether the new or old legacy behaviours are
wanted.
For _MSVCR_VER < 140, don't check the option flags but hardcode them to
TRUE. (This avoids having to manually add all three flags into every
caller of pf_printf.) Mask out any other flags, to avoid other
out-of-range flags to be interpreted as the other flags (positional
params, invoke invalid param handler).
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-04 19:19:12 +09:00
Martin Storsjo
1c8412d9e5
msvcrt: Refactor pf_printf to take options as flags instead of as BOOL parameter.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-04 19:18:56 +09:00
Martin Storsjo
b09aadd202
ucrtbase: Handle the swprintf style termination and return values.
...
When neither the "legacy vsprintf null termination" nor the "standard
snprintf behaviour" flags are specified, the functions return -2 when
the output string didn't fit (similar to old style msvcrt _snprintf that
returned -1), but they are null terminated (similar to the C99 snprintf
style behaviour). This is the same way as the C99 swprintf function
behaves.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-04 19:18:42 +09:00
Martin Storsjo
fcf9ec8080
ucrtbase: Add defines for the printf/scanf options constants.
...
Avoid using hardcoded magic numbers for these options.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-02 23:02:24 +09:00
Martin Storsjo
2a74c9a8ed
ucrtbase: Fix the function name in a comment.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-02 23:02:23 +09:00
Martin Storsjo
255a7fe067
ucrtbase: Implement some printf functions.
...
Not all functions are implemented (yet not all variants are
implemented in the normal msvcrt either).
The new functions are more generalized and are C99 compliant.
They take an options parameter that e.g. for the snprintf
family of functions indicate whether the truncation and return
value should be handled as before or in the standards compliant
way.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 22:31:24 +09:00
Daniel Lehman
65b8a3da47
msvcrt: Add __swprintf_l.
2015-06-01 14:43:54 +09:00
Orion Poplawski
8bf1732962
msvcrt: Bump MSVCRT_MB_LEN_MAX to 5 and use it in MSVCRT__wctomb_l for default buffer lengthSet MB_LEN_MAX to 5 to match MSVCRT_MB_LEN_MAX.
2015-02-03 14:38:40 +09:00
Piotr Caban
ccaf87b2ea
msvcrt: Add _iswpunct_l implementation.
2015-01-26 11:23:12 +01:00
Piotr Caban
ef69ad9f97
msvcrt: Add _iswspace_l implementation.
2015-01-26 11:23:08 +01:00
Piotr Caban
bd1428ef50
msvcrt: Add _vscprintf_p implementation.
2015-01-20 16:08:49 +01:00
Piotr Caban
3af24fe1f4
msvcrt: Add _wcsset_s implementation.
2014-12-23 18:59:36 +01:00
Hans Leidekker
ed79b3f9a5
msvcrt: Implement _snprintf_l.
2014-10-31 10:49:06 +09:00
Vincent Povirk
1860efaa9e
msvcrt: Implement _wcsnicmp_l.
2014-10-29 20:31:04 +09:00
Piotr Caban
b540277cc7
msvcrt: Add _wcsxfrm_l implementation.
2014-06-12 18:25:27 +02:00
Piotr Caban
28830b4b36
msvcrt: Return string in _wcslwr and _wcslwr_l.
2014-06-11 13:02:52 +02:00
Piotr Caban
31c76cae7c
msvcrt: Add _wcslwr_s_l implementation.
2014-05-24 11:01:28 +09:00
Piotr Caban
277eb98739
msvcrt: Add _wcsupr_l implementation.
2014-04-29 16:07:44 +02:00
Alexandre Julliard
0c496f0280
msvcrt: Update comments for non-exported functions.
2014-04-21 14:32:40 +02:00
Piotr Caban
beeea28a53
msvcr100: Move functions implementation to msvcrt.
2014-04-16 18:00:15 +02:00
Piotr Caban
e70bf5f8c6
msvcrt: Fix compilation errors on Mingw.
2014-04-16 18:00:01 +02:00
Piotr Caban
965d3acc6d
msvcrt: Fix wcs*coll functions behavior in C locale.
2014-01-27 14:13:27 +01:00
Alexandre Bique
33199860f1
msvcrt: Implement missing sprintf functions.
2013-12-10 13:01:22 +01:00
Alexandre Bique
09bfea117d
msvcrt: Implement _vsprintf_l.
2013-12-10 13:01:22 +01:00
Frédéric Delanoy
508365a2c1
msvcrt: Use BOOL type where appropriate.
2013-10-31 09:58:43 +01:00
Piotr Caban
26721c25f6
msvcrt: Don't forward wcsncmp to ntdll.
2013-10-01 13:10:21 +02:00
Piotr Caban
3868bf06b2
msvcrt: Add _wtoi64_l implementation.
2013-10-01 13:10:21 +02:00
Piotr Caban
b50833389e
msvcrt: Improve error handling in wcsrtombs function.
2013-09-24 18:54:37 +02:00
Piotr Caban
dadb2fdfa9
msvcrt: Add _snwprintf_s_l implementation.
2013-09-19 19:49:11 +02:00
Piotr Caban
1f1624612e
msvcrt: Don't use CDECL calling convention in MSVCRT_wcsrtombs_l (internal function).
2013-09-18 13:11:10 +02:00
Piotr Caban
882761f15d
msvcrt: Don't forward wcsstr to ntdll.
2013-09-17 16:25:54 +02:00
Piotr Caban
a89f726355
msvcrt: Don't forward wcslen to ntdll.
2013-09-17 16:25:48 +02:00
Piotr Caban
300c012372
msvcrt: Don't forward wcschr to ntdll.
2013-09-17 16:25:43 +02:00
Piotr Caban
2734ae0786
msvcrt: Don't forward _wcsnicmp to ntdll.
2013-09-12 12:59:02 +02:00