Lines Matching refs:strDest
20 SECUREC_INLINE errno_t SecDoCatW(wchar_t *strDest, size_t destMax, const wchar_t *strSrc)
27 SECUREC_CALC_WSTR_LEN(strDest, destMax, &destLen);
31 if (SECUREC_CAT_STRING_IS_OVERLAP(strDest, destLen, strSrc, srcLen)) {
32 strDest[0] = L'\0';
33 if (strDest + destLen <= strSrc && destLen == destMax) {
40 if (srcLen + destLen >= destMax || strDest == strSrc) {
41 strDest[0] = L'\0';
50 SECUREC_MEMCPY_WARP_OPT(strDest + destLen, strSrc, (srcLen + 1) * sizeof(wchar_t));
58 * to the end of the wide string pointed to by strDest.
61 * The wcscat_s function appends strSrc to strDest and terminates the resulting
63 * terminating null character of strDest. wcscat_s will return EOVERLAP_AND_RESET if the
70 * strDest Null-terminated destination string buffer.
75 * strDest is updated
79 * EINVAL strDest is NULL and destMax != 0 and destMax <= SECUREC_WCHAR_STRING_MAX_LEN
80 * EINVAL_AND_RESET (strDest unterminated and all other parameters are valid) or
81 * (strDest != NULL and strSrc is NULL and destMax != 0
84 * ERANGE_AND_RESET strDest have not enough space and all other parameters are valid and not overlap
87 * If there is a runtime-constraint violation, strDest[0] will be set to the '\0' when strDest and destMax valid
89 errno_t wcscat_s(wchar_t *strDest, size_t destMax, const wchar_t *strSrc)
96 if (strDest == NULL || strSrc == NULL) {
98 if (strDest != NULL) {
99 strDest[0] = L'\0';
105 return SecDoCatW(strDest, destMax, strSrc);