[Jifty-commit] r2174 - in Jifty-DBI/trunk: lib/Jifty/DBI/Filter
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Fri Nov 17 11:44:54 EST 2006
Author: falcone
Date: Fri Nov 17 11:44:53 2006
New Revision: 2174
Modified:
Jifty-DBI/trunk/ (props changed)
Jifty-DBI/trunk/lib/Jifty/DBI/Filter/DateTime.pm
Log:
r14587 at ketch: falcone | 2006-11-17 11:44:16 -0500
* decode() shouldn't be getting dates it can't understand
(they should have been encode()'ed before seeing the database)
Make it scream loudly and with a lot more information when we
run into a case like this.
Modified: Jifty-DBI/trunk/lib/Jifty/DBI/Filter/DateTime.pm
==============================================================================
--- Jifty-DBI/trunk/lib/Jifty/DBI/Filter/DateTime.pm (original)
+++ Jifty-DBI/trunk/lib/Jifty/DBI/Filter/DateTime.pm Fri Nov 17 11:44:53 2006
@@ -7,6 +7,7 @@
use DateTime ();
use DateTime::Format::ISO8601 ();
use DateTime::Format::Strptime ();
+use Carp ();
use constant _time_zone => '';
use constant _strptime => '%Y-%m-%d %H:%M:%S';
@@ -67,7 +68,13 @@
# but we need Jifty::DBI::Handle here to get DB type
my $str = join('T', split ' ', $$value_ref, 2);
- my $dt = DateTime::Format::ISO8601->parse_datetime($str);
+ my $dt;
+ eval { $dt = DateTime::Format::ISO8601->parse_datetime($str) };
+
+ if ($@) { # if datetime can't decode this, scream loudly with a useful error message
+ Carp::cluck($@);
+ return;
+ }
if ($dt) {
my $tz = $self->_time_zone;
More information about the Jifty-commit
mailing list