[スレッド全体]

2008/11/29 (土) 13:03:30 げんた  
INCM1.23c
[5484] 長すぎるパス名(続き)
>>data:6818 を見てGrep処理を追ってみたところ,CEditView::DoGrep()の中でバッファオーバーランの可能性が残ってますね.

途中
char szFile[_MAX_PATH];
...
strcpy( szFile, pcmGrepFile->GetPtr( /* &nDummy */ ) );

となっておりますが,GrepFileにはファイル名ではなくファイル名の検索パターン(セミコロン区切り)が与えられるので,_MAX_PATH以下との仮定は完全に誤りです.

ちなみに,szFile自体は受け渡しにしか使われていないので,ここでコピーする意味が分かりませんね.pcmGrepFile->GetPtr()をそのまま渡せばこの問題は解決しそうです.

[▼次のスレッド]
INCM/CMT
Cyclamen v3.81
[ut:0.010][st:0.000]