2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS system libraries
4 * FILE: lib/kernel32/file/lstring.c
5 * PURPOSE: Local string functions
6 * PROGRAMMER: Ariadne ( ariadne@xs4all.nl)
26 if (lpString1
== lpString2
)
28 if (lpString1
== NULL
)
30 if (lpString2
== NULL
)
33 Result
= CompareStringA(GetThreadLocale(), 0, lpString1
, -1, lpString2
, -1);
34 if (Result
) Result
-= 2;
52 if (lpString1
== lpString2
)
54 if (lpString1
== NULL
)
56 if (lpString2
== NULL
)
59 Result
= CompareStringA(GetThreadLocale(), NORM_IGNORECASE
, lpString1
, -1,
61 if (Result
) Result
-= 2;
78 /* Can't use strncpy, because strncpy will fill unused bytes in
79 lpString1 with NUL bytes while lstrcpynA doesn't. Also lstrcpynA
80 guarantees NUL termination while strncpy doesn't */
82 if (lpString1
== NULL
)
90 const char *s
= lpString2
;
98 while(1 != --iMaxLength
);
101 else if (1 == iMaxLength
)
103 /* Only space for the terminator */
121 if (lpString1
== NULL
)
126 return strcpy(lpString1
,lpString2
);
140 if (lpString1
== NULL
)
145 return strcat(lpString1
,lpString2
);
158 return strlen(lpString
);
174 if (lpString1
== lpString2
)
176 if (lpString1
== NULL
)
178 if (lpString2
== NULL
)
181 Result
= CompareStringW(GetThreadLocale(), 0, lpString1
, -1, lpString2
, -1);
182 if (Result
) Result
-= 2;
200 if (lpString1
== lpString2
)
202 if (lpString1
== NULL
)
204 if (lpString2
== NULL
)
207 Result
= CompareStringW(GetThreadLocale(), NORM_IGNORECASE
, lpString1
, -1, lpString2
, -1);
208 if (Result
) Result
-= 2;
225 /* Can't use wcsncpy, because wcsncpy will fill unused bytes in
226 lpString1 with NUL bytes while lstrcpynW doesn't Also lstrcpynW
227 guarantees NUL termination while wcsncpy doesn't */
229 if (lpString1
== NULL
)
236 WCHAR
*d
= lpString1
;
237 const WCHAR
*s
= lpString2
;
245 while(1 != --iMaxLength
);
248 else if (1 == iMaxLength
)
250 /* Only space for the terminator */
268 if (lpString1
== NULL
)
273 return wcscpy(lpString1
,lpString2
);
287 if (lpString1
== NULL
)
292 return wcscat(lpString1
,lpString2
);
305 return wcslen(lpString
);