From bf2e22934648ce762f75159f87060723b3ed8369 Mon Sep 17 00:00:00 2001 From: "lpsolit%gmail.com" Date: Tue, 14 Nov 2006 19:02:01 +0000 Subject: [PATCH] =?UTF-8?q?Bug=20323031:=20process=5Fbug.cgi=20crashes=20w?= =?UTF-8?q?hen=20encountering=20a=20deleted=20user=20account=20and=20when?= =?UTF-8?q?=20strict=5Fisolation=20is=20on=20-=20Patch=20by=20Fr=EF=BF=BD?= =?UTF-8?q?=EF=BF=BDd=EF=BF=BD=EF=BF=BDric=20Buclin=20?= =?UTF-8?q?=20r=3Dwicked=20a=3Djustdave?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- webtools/bugzilla/process_bug.cgi | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/webtools/bugzilla/process_bug.cgi b/webtools/bugzilla/process_bug.cgi index d3f52641e436..00594d89e87c 100755 --- a/webtools/bugzilla/process_bug.cgi +++ b/webtools/bugzilla/process_bug.cgi @@ -1342,7 +1342,8 @@ if ($prod_changed && Bugzilla->params->{"strict_isolation"}) { $sth_cc->execute($id); my @blocked_cc = (); while (my ($pid) = $sth_cc->fetchrow_array) { - $usercache{$pid} ||= Bugzilla::User->new($pid); + # Ignore deleted accounts. They will never get notification. + $usercache{$pid} ||= Bugzilla::User->new($pid) || next; my $cc_user = $usercache{$pid}; if (!$cc_user->can_edit_product($product->id)) { push (@blocked_cc, $cc_user->login); @@ -1357,7 +1358,7 @@ if ($prod_changed && Bugzilla->params->{"strict_isolation"}) { $sth_bug->execute($id); my ($assignee, $qacontact) = $sth_bug->fetchrow_array; if (!$assignee_checked) { - $usercache{$assignee} ||= Bugzilla::User->new($assignee); + $usercache{$assignee} ||= Bugzilla::User->new($assignee) || next; my $assign_user = $usercache{$assignee}; if (!$assign_user->can_edit_product($product->id)) { ThrowUserError('invalid_user_group', @@ -1367,7 +1368,7 @@ if ($prod_changed && Bugzilla->params->{"strict_isolation"}) { } } if (!$qacontact_checked && $qacontact) { - $usercache{$qacontact} ||= Bugzilla::User->new($qacontact); + $usercache{$qacontact} ||= Bugzilla::User->new($qacontact) || next; my $qa_user = $usercache{$qacontact}; if (!$qa_user->can_edit_product($product->id)) { ThrowUserError('invalid_user_group',