1 /* 2 * The C RunTime DLL 3 * 4 * Implements C run-time functionality as known from UNIX. 5 * 6 * Copyright 1996,1998 Marcus Meissner 7 * Copyright 1996 Jukka Iivonen 8 * Copyright 1997 Uwe Bonnes 9 */ 10 11 #include <precomp.h> 12 13 /* 14 * @implemented 15 */ 16 int _wcslwr_s(wchar_t* str, size_t n) 17 { 18 wchar_t *ptr=str; 19 if (!str || !n) 20 { 21 if (str) *str = '\0'; 22 *_errno() = EINVAL; 23 return EINVAL; 24 } 25 26 while (n--) 27 { 28 if (!*ptr) return 0; 29 *ptr = towlower(*ptr); 30 ptr++; 31 } 32 33 /* MSDN claims that the function should return and set errno to 34 * ERANGE, which doesn't seem to be true based on the tests. */ 35 *str = '\0'; 36 *_errno() = EINVAL; 37 return EINVAL; 38 } 39