From d893ce15b9aaecfe6c7bde0efccf34573ce6d169 Mon Sep 17 00:00:00 2001 From: Robin Sheat Date: Tue, 31 Jul 2012 13:22:48 +0200 Subject: [PATCH] Bug 8532 - improve robustness when converting dates If undef is passed to the date format conversion function, it dies. This can happen when you have old data in the database. Better to handle it in some fashion rather than die, so now it just returns undef too. --- Koha/DateUtils.pm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Koha/DateUtils.pm b/Koha/DateUtils.pm index a1fd088..da3bfff 100644 --- a/Koha/DateUtils.pm +++ b/Koha/DateUtils.pm @@ -94,7 +94,8 @@ s/(\d{4})(\d{2})(\d{2})\s+(\d{2})(\d{2})(\d{2})/$1-$2-$3T$4:$5:$6/; $date_string = output_pref($dt, [$format] ); -Returns a string containing the time & date formatted as per the C4::Context setting +Returns a string containing the time & date formatted as per the C4::Context setting, +or C if C was provided. A second parameter allows overriding of the syspref value. This is for testing only In usage use the DateTime objects own methods for non standard formatting @@ -106,6 +107,7 @@ sub output_pref { my $force_pref = shift; # if testing we want to override Context my $pref = defined $force_pref ? $force_pref : C4::Context->preference('dateformat'); + return undef unless defined($dt); given ($pref) { when (/^iso/) { return $dt->strftime('%Y-%m-%d %H:%M'); -- 1.7.9.5