▼ 2008/6/23 (月) 04:07:51 なすこじ | |
Mozilla/4.8 (Macintosh; U; PPC) |
>>data:6689も同様と思われる、長過ぎるパスのファイルを開くと落ちる既知の不具合についてです。
下記4箇所で_MAX_PATHを .nMaxFile に設定しますが、_MAX_PATH以上のファイルパスとなるとバッファに'\0'が無い状態となって突き抜けています。
CDlgOpenFile.cpp
DoModal_GetOpenFileName()
DoModal_GetSaveFileName()
DoModalOpenDlg()
DoModalSaveDlg()
下記のようにすることで取りあえず落ちるのは回避できるんですが、真っ当な方法じゃないような気もします。
m_ofn.nMaxFile = _MAX_PATH - 1;
memset( m_ofn.lpstrFile, 0, _MAX_PATH ); // 最後2文字を0にするだけでもOK
どうすべきでしょうか?
|
|