The m_DateFrom and m_DateTo are CDateTimeCtrl, in "show log" dialog,
the two DateTimePicker controls return date(yymmdd) but time(hhmmss)
is not specified, so the time is current time defaultly.
For example:
If you set "From:" and "To:" to "2005-01-01" and "2005-01-02" on 5:00pm
to see logs in 2005-01-01, you will get logs between "2005-01-01 17:00"
and "2005-01-02 17:01".
This behaviour doesn't accord with "svn log -r {yyyy-mm-dd}:{yyyy-mm-dd}",
in the command line, default time is 00:00:00.
I find this problem in TortoiseSVN 1.2.6, Build 4786 - 32 Bit. Here is a patch
for TortoiseSVN-1.3.0.5301-RC1-src, it seems this bug has not been fixed.
=======================================================
--- LogDlg.cpp Fri Dec 30 12:33:38 2005
+++ LogDlg-new.cpp Thu Jan 05 16:29:23 2006
@@ -2805,8 +2805,10 @@
void CLogDlg::OnDtnDatetimechangeDateto(NMHDR * /*pNMHDR*/, LRESULT *pResult)
{
- CTime time;
- m_DateTo.GetTime(time);
+ CTime _time;
+ m_DateTo.GetTime(_time);
+
+ CTime time(_time.GetYear(), _time.GetMonth(), _time.GetDay(), 0, 0, 0);
if (time.GetTime() != m_tTo)
{
m_tTo = (DWORD)time.GetTime();
@@ -2818,8 +2820,10 @@
void CLogDlg::OnDtnDatetimechangeDatefrom(NMHDR * /*pNMHDR*/, LRESULT *pResult)
{
- CTime time;
- m_DateFrom.GetTime(time);
+ CTime _time;
+ m_DateFrom.GetTime(_time);
+
+ CTime time(_time.GetYear(), _time.GetMonth(), _time.GetDay(), 0, 0, 0);
if (time.GetTime() != m_tFrom)
{
m_tFrom = (DWORD)time.GetTime();
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Thu Jan 5 10:04:04 2006