これでテストお願い。
+ int nTab = m_pcEditDoc->m_cLayoutMgr.GetTabSpace();
...
// キャレットがタブストップ位置にあると仮定する。
nDataLen = m;
- pszData = new char[nDataLen + 2]; // strlen("\t\0") == 2
+ pszData = new char[nDataLen + nTab + 1];
memcpy( pszData, pLine2, nDataLen );
if( CR == cChar
|| '{' == cChar
|| '(' == cChar
){
- pszData[nDataLen] = '\t';
- pszData[nDataLen + 1] = '\0';
+ memset(pszData[nDataLen], ' ', nTab);
+ pszData[nDataLen + nTab + 1] = '\0';
- ++nDataLen;
+ nDataLen += nTab;
}else{
pszData[nDataLen] = '\0';