From 93e808dbc5e703df7318e18f048710f19fc8e92c Mon Sep 17 00:00:00 2001 From: "lpsolit%gmail.com" <> Date: Wed, 10 Sep 2008 15:41:36 +0000 Subject: Bug 452893: request.cgi crashes if a flag modification date is invalid - Patch by Frédéric Buclin r/a=mkanat MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Bugzilla/Install/DB.pm | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'Bugzilla/Install') diff --git a/Bugzilla/Install/DB.pm b/Bugzilla/Install/DB.pm index 218ea093f..213fe3099 100644 --- a/Bugzilla/Install/DB.pm +++ b/Bugzilla/Install/DB.pm @@ -532,7 +532,10 @@ sub update_table_definitions { # 2008-07-28 tfu@redhat.com - Bug 431669 $dbh->bz_alter_column('group_control_map', 'product_id', { TYPE => 'INT2', NOTNULL => 1 }); - + + # 2008-09-07 LpSolit@gmail.com - Bug 452893 + _fix_illegal_flag_modification_dates(); + ################################################################ # New --TABLE-- changes should go *** A B O V E *** this point # ################################################################ @@ -3083,6 +3086,15 @@ sub _populate_bugs_fulltext { } } +sub _fix_illegal_flag_modification_dates { + my $dbh = Bugzilla->dbh; + + my $rows = $dbh->do('UPDATE flags SET modification_date = creation_date + WHERE modification_date < creation_date'); + # If no rows are affected, $dbh->do returns 0E0 instead of 0. + print "$rows flags had an illegal modification date. Fixed!\n" if ($rows =~ /^\d+$/); +} + 1; __END__ -- cgit v1.2.3-24-g4f1b