From e100906bc599a08b9aebb4ad0becebf0ed1c983f Mon Sep 17 00:00:00 2001 From: Sven Strickroth Date: Mon, 24 Oct 2016 00:23:08 +0200 Subject: [PATCH] SetHooksAdv & SetBugTraqAdv: Validate working tree path Signed-off-by: Sven Strickroth --- src/TortoiseProc/Settings/SetBugTraqAdv.cpp | 6 ++++++ src/TortoiseProc/Settings/SetHooksAdv.cpp | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/src/TortoiseProc/Settings/SetBugTraqAdv.cpp b/src/TortoiseProc/Settings/SetBugTraqAdv.cpp index 817a15fb2..21feaa0d2 100644 --- a/src/TortoiseProc/Settings/SetBugTraqAdv.cpp +++ b/src/TortoiseProc/Settings/SetBugTraqAdv.cpp @@ -121,6 +121,12 @@ void CSetBugTraqAdv::OnOK() { UpdateData(); + if (m_sPath.IsEmpty() || !PathIsDirectory(m_sPath) || PathIsRelative(m_sPath)) + { + ShowEditBalloon(IDC_BUGTRAQPATH, (LPCTSTR)CFormatMessageWrapper(ERROR_PATH_NOT_FOUND), CString(MAKEINTRESOURCE(IDS_ERR_ERROR)), TTI_ERROR); + return; + } + m_provider_clsid = GUID_NULL; int index = m_cProviderCombo.GetCurSel(); diff --git a/src/TortoiseProc/Settings/SetHooksAdv.cpp b/src/TortoiseProc/Settings/SetHooksAdv.cpp index 7c5730383..c451e6e7d 100644 --- a/src/TortoiseProc/Settings/SetHooksAdv.cpp +++ b/src/TortoiseProc/Settings/SetHooksAdv.cpp @@ -136,6 +136,11 @@ void CSetHooksAdv::OnOK() ShowEditBalloon(IDC_HOOKPATH, IDS_ERR_NOHOOKPATHSPECIFIED, IDS_ERR_ERROR, TTI_ERROR); return; } + if (key.path.GetWinPathString() != L"*" && (!PathIsDirectory(key.path.GetWinPathString()) || PathIsRelative(key.path.GetWinPathString()))) + { + ShowEditBalloon(IDC_HOOKPATH, (LPCTSTR)CFormatMessageWrapper(ERROR_PATH_NOT_FOUND), CString(MAKEINTRESOURCE(IDS_ERR_ERROR)), TTI_ERROR); + return; + } if (cmd.commandline.IsEmpty()) { ShowEditBalloon(IDC_HOOKCOMMANDLINE, IDS_ERR_NOHOOKCOMMANDPECIFIED, IDS_ERR_ERROR, TTI_ERROR); -- 2.11.4.GIT