From 23c63e06693b324f5ea61555fd150ac4a158679a Mon Sep 17 00:00:00 2001 From: "lpsolit%gmail.com" <> Date: Thu, 12 Jul 2007 07:40:02 +0000 Subject: =?UTF-8?q?Bug=20387831:=20Deleting=20products=20does=20not=20clea?= =?UTF-8?q?n=20up=20the=20component=5Fcc=20table=20-=20Patch=20by=20Fr?= =?UTF-8?q?=C3=83=C2=A9d=C3=83=C2=A9ric=20Buclin=20=20r?= =?UTF-8?q?/a=3Dmkanat?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- editproducts.cgi | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'editproducts.cgi') diff --git a/editproducts.cgi b/editproducts.cgi index b458f60bf..dac5799ad 100755 --- a/editproducts.cgi +++ b/editproducts.cgi @@ -408,9 +408,16 @@ if ($action eq 'delete') { $dbh->bz_lock_tables('products WRITE', 'components WRITE', 'versions WRITE', 'milestones WRITE', - 'group_control_map WRITE', + 'group_control_map WRITE', 'component_cc WRITE', 'flaginclusions WRITE', 'flagexclusions WRITE'); + my $comp_ids = $dbh->selectcol_arrayref('SELECT id FROM components + WHERE product_id = ?', + undef, $product->id); + + $dbh->do('DELETE FROM component_cc WHERE component_id IN + (' . join(',', @$comp_ids) . ')') if scalar(@$comp_ids); + $dbh->do("DELETE FROM components WHERE product_id = ?", undef, $product->id); -- cgit v1.2.1