MCPcopy Create free account
hub / github.com/Tripwire/tripwire-open-source / tss_wctomb

Function tss_wctomb

src/core/codeconvert.cpp:1202–1221  ·  view source on GitHub ↗

-- Ensures 1-to-1 mb to wide character mapping by doing a reverse conversion and comparing the results

Source from the content-addressed store, hash-verified

1200//-- Ensures 1-to-1 mb to wide character mapping by doing a reverse conversion
1201// and comparing the results
1202int tss_wctomb(mbchar_t* pch, wchar_t wch)
1203{
1204 // convert forward
1205 int nWide = ::wctomb(pch, wch);
1206 if (nWide == -1)
1207 return -1;
1208
1209 // convert backwards
1210 wchar_t wchTest;
1211 int nNarrow = ::mbtowc(&wchTest, pch, MB_CUR_MAX);
1212 if (nNarrow == -1)
1213 return -1;
1214
1215 // compare...
1216 if (wchTest != wch)
1217 return -1;
1218
1219 // success!
1220 return nWide;
1221}
1222
1223int tss_wcstombs(ntmbs_t pbz, const_ntwcs_t pwz, size_t nCount)
1224{

Callers 1

tss_wcstombsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected