Commit Graph

152 Commits

Author SHA1 Message Date
Vijay Kiran Kamuju c583c4afaa msvcrt: Implement %n and %t formats for strftime.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-16 12:30:59 +02:00
Vijay Kiran Kamuju 8e1435ef81 msvcrt: Implement %h format for strftime.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 23:38:33 +02:00
Vijay Kiran Kamuju 0bdaecd2d7 msvcrt: Implement %e format for strftime.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 22:58:06 +02:00
Vijay Kiran Kamuju 3762402779 msvcrt: Implement %C format for strftime.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 12:16:34 +02:00
Vijay Kiran Kamuju 5da8af40dd msvcrt: Implement %F format for strftime.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-01 15:14:09 +02:00
Vijay Kiran Kamuju 1ed44b3554 msvcrt: Implement %D format for strftime.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-01 15:14:09 +02:00
Vijay Kiran Kamuju 20810377ed msvcrt: Implement %R format for strftime.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-30 22:24:27 +02:00
Piotr Caban 30913ff564 msvcrt: Don't write past buffer in strftime.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-30 22:24:27 +02:00
Andrew Eikum bfe02fc747 msvcrt: Implement %T format for strftime.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-27 17:43:31 +02:00
Piotr Caban 79188582f0 msvcrt: Fix buffer overflow in _get_tzname.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46481
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-27 20:19:19 +01:00
Piotr Caban 2efc73b968 msvcrt: Use GetDaylightFlag() to set dstflag value in _ftime64.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-21 14:01:14 +01:00
Piotr Caban b8bafa2c58 msvcrt: Use _timezone in _ftime64.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-21 14:01:12 +01:00
Piotr Caban 7a50abd894 ucrtbase: Add _timespec{32,64}_get implementation.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-18 21:25:49 +02:00
Akihiro Sagawa f4ddd3190a ucrtbase: Asctime() uses space-padding for day of month as seen in C89.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 13:24:27 +01:00
Alex Henrie b4e1390123 msvcrt: Don't include MSVC 8.0+ time functions in SOs for older DLLs.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-05 18:51:30 +01:00
Piotr Caban 5823e5b914 msvcrt: Fix '%z' format handling in strftime.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-03 17:15:23 +02:00
Piotr Caban a6400b9fe7 msvcr: Add _Wcsftime implementation.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-14 20:10:22 +01:00
Piotr Caban 17186413fe msvcr: Add _get_dstbias implementation.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-28 20:40:02 +01:00
Piotr Caban e38cbd82bd msvcrt: Add wcsftime_l.
Based on Daniel Lehman's patch.

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 12:07:56 +09:00
Piotr Caban 1505684a85 msvcrt: Add _strftime_l.
Based on Daniel Lehman's patch.

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 12:07:46 +09:00
Piotr Caban d6948bf356 msvcrt: Add support for multibyte characters in _Strftime.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 12:07:29 +09:00
Piotr Caban 7dfb21a9db msvcrt: Fix parameters conversion in wcsftime function.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 12:07:22 +09:00
Piotr Caban d4450b9195 msvcr110: Fix __lc_time_data definition.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-20 21:19:21 +09:00
Piotr Caban ecac39c19b msvcrt: Add _wctime32_s implementation. 2015-09-15 17:02:11 +09:00
Nikolay Sivov 1228f0bba5 msvcrt: Added __dstbias() export. 2014-09-10 21:36:52 +02:00
Piotr Caban c18d52d346 msvcrt: Don't crash on NULL struct _tm in asctime. 2014-05-12 19:30:16 +02:00
Piotr Caban beeea28a53 msvcr100: Move functions implementation to msvcrt. 2014-04-16 18:00:15 +02:00
Daniel Lehman 15b35f4d37 msvcrt: Return wall-clock time from clock(). 2013-11-25 19:30:20 +01:00
Frédéric Delanoy f6677602e3 msvcrt: Use BOOL type where appropriate. 2013-10-11 11:05:59 +02:00
Piotr Caban d3ecfe0599 msvcrt: Fixed _localtime64 implementation. 2012-12-10 17:36:28 +01:00
Piotr Caban 11216fabc4 msvcrt: Reorganize _localtime64 function. 2012-12-10 17:36:28 +01:00
Piotr Caban acac63663a msvcrt: Improved input parameter range check in _gmtime64_s. 2012-12-10 17:36:28 +01:00
Piotr Caban c9a7436812 msvcrt: Fixed mkgmtime and _mkgmtime64 implementation. 2012-12-10 17:36:27 +01:00
Piotr Caban a66ed048a3 msvcrt: Fixed mktime and _mktime64 implementation. 2012-12-10 17:36:27 +01:00
Piotr Caban 351dff91de msvcrt: Reimplement _tzset function. 2012-12-10 17:36:26 +01:00
Alexandre Julliard 06989a0483 msvcrt: Make sure that errno is always set when calling the invalid parameter handler. 2012-07-26 11:05:32 +02:00
Piotr Caban bfa3045816 msvcrt: Added support for %W and %U format in strftime. 2012-04-16 17:49:24 +02:00
Piotr Caban ef08e80765 msvcrt: Added _Strftime implementation. 2012-04-11 18:23:23 +02:00
Piotr Caban 2ca9a73a31 msvcrt: Rewrite wasctime function. 2012-04-11 18:20:34 +02:00
Piotr Caban 0f7c834bd1 msvcrt: Rewrite asctime function. 2012-04-11 18:20:14 +02:00
André Hentschel f012242037 msvcrt: Implement _wasctime_s. 2011-11-30 17:04:39 +01:00
André Hentschel 35722cb4ce msvcrt: Implement asctime_s. 2011-11-30 17:04:35 +01:00
Andrew Talbot fb3b28f013 msvcrt: void functions should not return a value. 2011-08-22 16:14:31 +02:00
Piotr Caban f9de4eef75 msvcrt: Fix mingw compilation issues. 2011-06-03 17:44:06 +02:00
Piotr Caban 12229aeeb2 msvcrt: Change the way how localtime/gmtime buffer is stored in __thread_data. 2011-05-25 11:46:16 +02:00
Eryk Wieliczko b6acca6696 msvcrt: Implement _ftime64_s and _ftime32_s. 2010-12-29 12:05:23 +01:00
Michael Stefaniuc 33c528188d msvcrt: Add missing dereference of the time pointer. 2010-11-24 12:06:36 +01:00
Eryk Wieliczko 504e68ac24 msvcrt: Implement _ctime32/64_s. 2010-11-23 14:16:22 +01:00
Eryk Wieliczko 7b8ac6a255 msvcrt: Implement _get_tzname. 2010-11-04 12:21:26 +01:00
Andrew Nguyen 6086610314 msvcrt: Implement _localtime32_s. 2010-10-11 17:11:37 +02:00
Andrew Nguyen 90771ab605 msvcrt: Use the write_invalid_msvcrt_tm helper in _gmtime64_s. 2010-10-11 17:11:37 +02:00
Andrew Nguyen e245cb52c6 msvcrt: Implement _localtime64_s. 2010-10-11 17:11:37 +02:00
Andrew Nguyen ac26d786c4 msvcrt: Convert the Unix asctime string from CP_UNIXCP to CP_ACP. 2010-09-28 17:33:15 +02:00
Piotr Caban 6467c8325f msvcrt: Added _gmtime32_s and _gmtime64_s implementation. 2010-08-27 12:06:00 +02:00
Piotr Caban 471bad1ee8 msvcrt: Added _strdate_s and _wstrdate_s implementation. 2010-08-27 12:05:42 +02:00
Piotr Caban 7d0c04d31c msvcrt: Added _strtime_s and _wstrtime_s implementation. 2010-08-27 12:05:10 +02:00
Piotr Caban c4d6877894 msvcrt: Added _mkgmtime implementation. 2010-04-27 13:04:45 -05:00
Piotr Caban 8c954c0957 msvcrt: Avoid using localtime_r. 2010-03-29 15:50:20 +02:00
Alexandre Julliard 82f175e9b5 msvcrt: Replace long by MSVCRT_long. 2009-05-23 11:57:39 +02:00
Alexandre Julliard 8408e3a955 msvcrt: Add explicit 32- and 64-bit versions of the time functions. 2009-05-23 11:12:12 +02:00
Michael Stefaniuc 9d4c9a0cdd msvcrt: Remove superfluous pointer casts. 2009-01-29 14:06:15 +01:00
Alexandre Julliard 8a658d7d51 msvcrt: Rename _ftime to avoid conflicts. 2008-12-15 20:08:33 +01:00
Alexandre Julliard d8ab5a14aa msvcrt: Use intptr_t or size_t instead of long where appropriate. 2008-12-12 10:19:55 +01:00
Michael Stefaniuc 276b938e1d msvcrt: Use NULL instead of casting zero. 2008-12-05 12:36:19 +01:00
Jeff Zaroyko 82f77cc17a msvcrt: Avoid a NULL pointer deref in ctime. 2008-10-02 11:24:01 -05:00
Dmitry Timoshkov e98d1da7d4 msvcrt: Restore error handling code in localtime. 2007-08-21 21:39:03 +02:00
Dmitry Timoshkov 1e5b131d7a msvcrt: Route mktime and localtime to glibc. 2007-08-21 12:41:35 +02:00
Alexandre Julliard 429cd9e817 msvcrt: Avoid including system headers in msvcrt.h. 2006-07-10 11:54:10 +02:00
Jeremy White a73d568ece msvcrt: Solaris asctime_r compilation fix. 2006-06-19 22:42:05 +02:00
Alexandre Julliard 24beabfd4e msvcrt: Explicitly specify CDECL calling convention on exported functions. 2006-06-13 11:40:23 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Alexandre Julliard 7fe881c7f2 msvcrt: Implementation of wcsftime (based on a patch by Mike McCormack). 2006-03-23 20:35:52 +01:00
Dmitry Timoshkov ea0e7b3397 msvcrt: localtime should accept any positive time value. 2006-02-11 12:15:21 +01:00
Hans Leidekker 1b69f035e1 msvcrt: Stub implementation for wcsftime. 2006-01-23 19:29:15 +01:00
Alexandre Julliard f9e5b0f5f0 msvcrt: Implemented asctime, ctime and strftime instead of using the libc ones.
Make the code thread-safe by using asctime_r if available.
2006-01-14 17:22:03 +01:00
Alexandre Julliard 06c1a36bce msvcrt: Return a per-thread buffer in localtime and gmtime. 2005-12-21 20:54:26 +01:00
Marcus Meissner 9a583763ee msvcrt: Implemented wctime(), wasctime().
Free thread data in DLL_THREAD_DETACH.
2005-12-21 20:23:47 +01:00
Robert Reif b8d1544661 Implement _wstrdate and _wstrtime with tests. 2005-10-30 19:03:58 +00:00
Alexandre Julliard 6b2a9b3022 Added implementation of _dstbias and __p__dstbias.
Added macros for _dstbias, _daylight, _timezone and _tzname.
2005-09-27 10:55:50 +00:00
Phil Krylov 6618b0355c Added detection of platforms which don't have external timezone and
daylight variables, and emulation of these variables.
2005-05-24 11:52:46 +00:00
Juan Lang 7bf1ee877d - move _timezone to time.c, and correct its type
- implement _tzset, and initialize _daylight, _timezone, and _tzname
  from libc values
2005-05-14 11:07:10 +00:00
Juan Lang 576aa4a6d8 Export _tzname, expected by Mozilla. 2005-04-23 19:06:29 +00:00
Rein Klazes dceae02d73 - RtlTimeFieldsToTime should not normalize the time fields
structure. Instead return error when it is given an unormalized
  date.
- Use better algorithms for RtlTimeToTimeFields and
  RtlTimeFieldsToTime. RtlTimeToTimeFields is about 3 times faster.
- Add tests for RtlTimeFieldsToTime.
- SystemTimeToFileTime must fail if RtlTimeFieldsToTime fails. Users
  of SystemTimeToFileTime must do likewise.
- Remove a todo_wine from SystemTimeToFileTime tests.
- Since msvcrt.mktime must accept unnormalized dates, it cannot use
  SystemTimeToFileTime and do the calculations itself.
- Add some tests for mktime accepting unnormalized dates.
2004-11-06 03:53:53 +00:00
Rein Klazes 2fc0f991d8 In MSVCRT_localtime() return tm_isdst = 0 when there are no daylight
time changes in the local time zone.
2004-10-27 21:17:44 +00:00
Rein Klazes 4ca34c4b2f Correctly use the returned value from GetTimeZoneInformation. 2004-10-25 21:48:57 +00:00
Rein Klazes dc78e9a595 - mktime should compute the tm_wday, tm_yday and renormalize the
other fields of the supplied tm structure.
- add prototype declarations for the time functions.
2004-10-21 19:56:46 +00:00
Uwe Bonnes 46e922bba5 Added MSVCRT_CLOCKS_PER_SEC define. 2004-09-08 19:05:28 +00:00
Dimitrie O. Paun 0377462460 Split the MSVCRT implementation headers from the public headers.
Fix some naming conventions aberrations.
Add tests to ensure consistency between the two sets of symbols.
2004-06-25 01:19:15 +00:00
Uwe Bonnes 1c6cb382bc Correct errors with move to kernel time functions.
Add test case.
2004-03-25 00:12:40 +00:00
Hans Leidekker 3f09feda6e Reimplement time functions with Win32 APIs.
Implement localtime()/gmtime().
2004-03-19 01:16:59 +00:00
Hans Leidekker 6ee09f5d56 Implement _ftime with Win32 APIs. 2004-03-11 00:43:47 +00:00
Marcus Meissner dbcbbe0211 Added _daylight stub int, and __p__daylight function. 2003-03-04 02:19:15 +00:00
Patrik Stridvall 57bf45067a MSVC compatibility fixes. 2002-08-26 21:53:24 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Alexandre Julliard bd1689ec0a Don't include debugtools.h in the header file, moved it to the C files
that need it (and used the new wine/debug.h while we are at it).
2002-01-22 00:57:16 +00:00
François Gouget d1d07fb801 mktime must normalize the struct tm fields. 2001-12-05 22:08:46 +00:00
Gerard Patel 3953614bbd - implement mbscspn mostly as a stub
- reimplement mktime
2001-11-12 15:47:26 +00:00
Francois Gouget 45e7a846bf We must not free the pointer returned by localtime (especially not
with MSVCRT_free!).
We no longer need to include stdlib.h.
2001-04-23 18:22:33 +00:00
Gerald Pfeifer ab02c2bdc9 Fixed MSVCRT_clock return type. 2001-04-16 18:54:31 +00:00
Francois Gouget e7f75c5dfb Include the msvcrt headers, remove duplicate definitions.
Fixed the signature of a few functions.
Don't use wcs* functions, use *W (from unicode.h) instead.
2001-04-10 23:25:25 +00:00