すいさんに指摘していただいた色の件です。
>>CBlockComment::Match_CommentFrom()で毎回strlenで長さを取得しなくて良いようにどこかに値を覚えておいた方がよいように思う.
>
>確かに!!
>元のコードをコピー&アレンジしただけでそこまで気が付きませんでした!!
>private変数で用意して、CopyToでコピーしたときにstrlenすればいいですね。
>よろしくお願いします。
CopyToでstrlenする方法だとiniファイルを読み込んだときに、CopyToが呼ばれないからstrlenされない
ので↓こんな感じで修正してくださいませ。(こんな方法でいいのかどうかはさておき)
diff -rc E:\サクラエディタ\ssrc_2002-09-27_org/sakura_core/CShareData_new.cpp E:\サクラエディタ\ssrc_2002-09-27/sakura_core/CShareData_new.cpp
*** E:\サクラエディタ\ssrc_2002-09-27_org/sakura_core/CShareData_new.cpp Fri Sep 27 03:53:40 2002
--- E:\サクラエディタ\ssrc_2002-09-27/sakura_core/CShareData_new.cpp Sat Sep 28 14:22:46 2002
***************
*** 709,714 ****
--- 709,719 ----
cProfile.IOProfileData( bRead, pszSecName, "szLineComment" , REGCNV_SZ2SZ, (char*)/*&*/m_pShareData->m_Types[i].m_c
LineComment.m_pszLineComment[0], 0 );
cProfile.IOProfileData( bRead, pszSecName, "szLineComment2" , REGCNV_SZ2SZ, (char*)/*&*/m_pShareData->m_Types[i].m_c
LineComment.m_pszLineComment[1], 0 );
cProfile.IOProfileData( bRead, pszSecName, "szLineComment3" , REGCNV_SZ2SZ, (char*)/*&*/m_pShareData->m_Types[i].m_c
LineComment.m_pszLineComment[2], 0 ); //Jun. 01, 2001 JEPRO 追加
+ if (bRead){
+ m_pShareData->m_Types[i].m_cLineComme
nt.m_nLineCommentLen[0] = lstrlen( m_pShareData->m_Types[i].m_cLineComment.m_pszLineComment[0] );
+ m_pShareData->m_Types[i].m_cLineComme
nt.m_nLineCommentLen[1] = lstrlen( m_pShareData->m_Types[i].m_cLineComment.m_pszLineComment[1] );
+ m_pShareData->m_Types[i].m_cLineComme
nt.m_nLineCommentLen[2] = lstrlen( m_pShareData->m_Types[i].m_cLineComment.m_pszLineComment[2] );
+ }
cProfile.IOProfileData( bRead, pszSecName, "szBlockCommentFrom" , REGCNV_SZ2SZ, (char*)/*&*/m_pShareData->m_Types[i].m_c
BlockComment.m_szBlockCommentFrom[0], 0 );
cProfile.IOProfileData( bRead, pszSecName, "szBlockCommentTo" , REGCNV_SZ2SZ, (char*)/*&*/m_pShareData->m_Types[i].m_c
BlockComment.m_szBlockCommentTo[0], 0 );
//#ifdef COMPILE_BLOCK_COMMENT2 //@@@ 2001.03.10 by MIK
お手数おかけしますが、よろしくお願いしますっ。