From be53e8ae80b65697dd27fd86530456c4e760e25d Mon Sep 17 00:00:00 2001 From: Jaakko Salli Date: Mon, 12 Jan 2009 17:22:18 +0000 Subject: [PATCH] Let wxVariantDataDateTime::Write() and Read() work with invalid dates (otherwise wxVariant::GetString() will assert when value is an invalid wxDateTime) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/common/variant.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/common/variant.cpp b/src/common/variant.cpp index 95633e6eeb..2b952944b1 100644 --- a/src/common/variant.cpp +++ b/src/common/variant.cpp @@ -1242,7 +1242,10 @@ bool wxVariantDataDateTime::Write(wxSTD ostream& str) const bool wxVariantDataDateTime::Write(wxString& str) const { - str = m_value.Format(); + if ( m_value.IsValid() ) + str = m_value.Format(); + else + str = wxS("Invalid"); return true; } @@ -1258,6 +1261,12 @@ bool wxVariantDataDateTime::Read(wxSTD istream& WXUNUSED(str)) bool wxVariantDataDateTime::Read(wxString& str) { + if ( str == wxS("Invalid") ) + { + m_value = wxInvalidDateTime; + return true; + } + if(! m_value.ParseDateTime(str.c_str()/*FIXME-UTF8*/)) return false; return true; -- 2.45.2