_fiInfo->tmAccess = 0;\r
_fiInfo->tmCreate = 0;\r
_fiInfo->tmModified = 0;\r
+ _fiInfo->uDanger = 0;\r
_fiInfo->uOSType = 0;\r
_fiInfo->llPackedSize = 0;\r
_fiInfo->llUnpackedSize = 0;\r
wxDateTime tmAccess; /**< 最終参照日時 */\r
wxDateTime tmCreate; /**< 作成日時 */\r
wxDateTime tmModified; /**< 最終更新日時 */\r
+ unsigned int uDanger; /**< セキュリティ警告 */\r
unsigned int uOSType; /**< 作成元OS */\r
wxULongLong llPackedSize; /**< 格納後のサイズ */\r
wxULongLong llUnpackedSize; /**< 格納前のサイズ */\r
\r
wxListItemAttr * myListCtrl::OnGetItemAttr(long i) const\r
{\r
- return (wxListItemAttr *) this->showFileInfo[i].pCustomInfo;\r
+ return this->showFileInfo[i].uDanger ? (wxListItemAttr *) & this->atDangerItem : NULL;\r
}\r
\r
void myListCtrl::OnColClick(wxListEvent& e)\r
// DTV\8c\9f\8d¸\81B
if (piInfo.fiInfo.fnFileName.GetPathWithSep().Find(wxT("..")) != wxNOT_FOUND)
{
- piInfo.fiInfo.pCustomInfo = & this->list_ctrl->atDangerItem;
+ piInfo.fiInfo.uDanger = TRUE;
::wxMessageBox(wxT("This archive may have Directory Traversal Vulnerability(DTV) problem, and some danger files may be extracted to the unexpected system directory! You should use the \"Ignore file pathes\" option when extracting this archive.\nDanger file is:\n" + piInfo.fiInfo.szStoredName), wxMessageBoxCaptionStr, wxICON_EXCLAMATION);
}
// \8bó\94\92\82Ì\98A\91±\82É\82æ\82é\8ag\92£\8eq\8bU\91\95\82ð\8c\9f\8d¸\81B
if (piInfo.fiInfo.fnFileName.GetFullName().Find(wxT(" ")) != wxNOT_FOUND)
{
- piInfo.fiInfo.pCustomInfo = & this->list_ctrl->atDangerItem;
+ piInfo.fiInfo.uDanger = TRUE;
::wxMessageBox(wxT("This archive may contain extension-disguised files whose real extension is hidden by using many blank charactor and you may mistake that it is a \"safe\" file. Don\'t execute these files carelessly.\nDanger file is:\n" + piInfo.fiInfo.szStoredName), wxMessageBoxCaptionStr, wxICON_EXCLAMATION);
}
// Unicode\90§\8cä\95¶\8e\9a\82ð\8c\9f\8d¸\81B
{
if (piInfo.fiInfo.fnFileName.GetFullName().Find(c) != wxNOT_FOUND)
{
- piInfo.fiInfo.pCustomInfo = & this->list_ctrl->atDangerItem;
+ piInfo.fiInfo.uDanger = TRUE;
::wxMessageBox(wxT("This archive may contain extension-disguised files whose real extension is hidden by using Unicode control character and you may mistake that it is a \"safe\" file. Don\'t execute these files carelessly.\nDanger file is:\n" + piInfo.fiInfo.szStoredName), wxMessageBoxCaptionStr, wxICON_EXCLAMATION);
}
switch (c)