xref: /reactos/sdk/lib/crt/time/strdate.c (revision c2c66aff)
1*c2c66affSColin Finck /*
2*c2c66affSColin Finck  * COPYRIGHT:   See COPYING in the top level directory
3*c2c66affSColin Finck  * PROJECT:     ReactOS CRT library
4*c2c66affSColin Finck  * FILE:        lib/sdk/crt/time/strdate.c
5*c2c66affSColin Finck  * PURPOSE:     Fills a buffer with a formatted date representation
6*c2c66affSColin Finck  * PROGRAMER:   Ariadne
7*c2c66affSColin Finck  * UPDATE HISTORY:
8*c2c66affSColin Finck  *              28/12/98: Created
9*c2c66affSColin Finck  */
10*c2c66affSColin Finck #include <precomp.h>
11*c2c66affSColin Finck 
12*c2c66affSColin Finck /*
13*c2c66affSColin Finck  * @implemented
14*c2c66affSColin Finck  */
_strdate(char * date)15*c2c66affSColin Finck char* _strdate(char* date)
16*c2c66affSColin Finck {
17*c2c66affSColin Finck    static const char format[] = "MM'/'dd'/'yy";
18*c2c66affSColin Finck 
19*c2c66affSColin Finck    GetDateFormatA(LOCALE_NEUTRAL, 0, NULL, format, date, 9);
20*c2c66affSColin Finck 
21*c2c66affSColin Finck    return date;
22*c2c66affSColin Finck 
23*c2c66affSColin Finck }
24*c2c66affSColin Finck 
25*c2c66affSColin Finck /*
26*c2c66affSColin Finck  * @implemented
27*c2c66affSColin Finck  */
_strdate_s(char * date,size_t size)28*c2c66affSColin Finck int CDECL _strdate_s(char* date, size_t size)
29*c2c66affSColin Finck {
30*c2c66affSColin Finck     if(date && size)
31*c2c66affSColin Finck         date[0] = '\0';
32*c2c66affSColin Finck 
33*c2c66affSColin Finck     if(!date) {
34*c2c66affSColin Finck         *_errno() = EINVAL;
35*c2c66affSColin Finck         return EINVAL;
36*c2c66affSColin Finck     }
37*c2c66affSColin Finck 
38*c2c66affSColin Finck     if(size < 9) {
39*c2c66affSColin Finck         *_errno() = ERANGE;
40*c2c66affSColin Finck         return ERANGE;
41*c2c66affSColin Finck     }
42*c2c66affSColin Finck 
43*c2c66affSColin Finck     _strdate(date);
44*c2c66affSColin Finck     return 0;
45*c2c66affSColin Finck }
46