@@ -392,7 +392,8 @@ PROJECT: foreach my $project (@review_projects) {
392392 if (scalar @project_members == 1) {
393393 my $lone_reviewer = $project_members [0];
394394
395- if ( $lone_reviewer -> bugzilla_user-> can_see_bug($revision -> bug-> id)
395+ if ( $lone_reviewer -> phid ne $revision -> author-> phid
396+ && $lone_reviewer -> bugzilla_user-> can_see_bug($revision -> bug-> id)
396397 && $lone_reviewer -> bugzilla_user-> settings-> {block_reviews }-> {value } ne ' on' )
397398 {
398399 INFO(' Single project member found: ' . $lone_reviewer -> name);
@@ -406,6 +407,7 @@ PROJECT: foreach my $project (@review_projects) {
406407 if (@stack_reviewers ) {
407408 foreach my $member (@project_members ) {
408409 next if none { $_ -> id == $member -> id } @stack_reviewers ;
410+ next if $member -> phid eq $revision -> author-> phid;
409411 INFO(' Found a previous stack reviewer: ' . $member -> name);
410412 set_new_reviewer($revision , $project , $member , $is_blocking , \@review_users );
411413 next PROJECT;
@@ -426,16 +428,6 @@ PROJECT: foreach my $project (@review_projects) {
426428 }
427429 }
428430
429- # If we still have not found a reviewer and there is no member that was the
430- # last reviewer, then just pick the first member in the list
431- if (!$last_reviewer_phid ) {
432- INFO(' Last reviewer not found so picking first member: '
433- . $project_members [0]-> name);
434- set_new_reviewer($revision , $project , $project_members [0], $is_blocking ,
435- \@review_users );
436- next ;
437- }
438-
439431 # Loop through all members and pick the next one in line after last selected
440432 foreach my $member (@project_members ) {
441433 INFO(' Considering candidate reviewer: ' . $member -> name);
@@ -449,7 +441,8 @@ PROJECT: foreach my $project (@review_projects) {
449441 # Here we look to see if they can see the bug, and they are not set to away
450442 # (not accepting reviews). If both are positive, we have found our reviewer
451443 # and exit the loop.
452- if ( $member -> bugzilla_user-> can_see_bug($revision -> bug-> id)
444+ if ($member -> phid ne $revision -> author-> phid
445+ && $member -> bugzilla_user-> can_see_bug($revision -> bug-> id)
453446 && $member -> bugzilla_user-> settings-> {block_reviews }-> {value } ne ' on' )
454447 {
455448 INFO(' Promoting member to reviewer: ' . $member -> name);
0 commit comments