@@ -228,18 +228,17 @@ def problems(self):
228228 elif latest_build ["results" ] == buildbot .process .results .WARNINGS :
229229 yield BuildWarning (latest_build )
230230 elif latest_build ["results" ] == buildbot .process .results .FAILURE :
231- failing_streak = 0
232231 first_failing_build = None
233232 for build in self .iter_interesting_builds ():
234233 if build ["results" ] == buildbot .process .results .FAILURE :
235234 first_failing_build = build
236- continue
237235 elif build ["results" ] == buildbot .process .results .SUCCESS :
238- if latest_build != first_failing_build :
239- yield BuildFailure (latest_build , first_failing_build )
240236 break
241237 else :
242- yield BuildFailure (latest_build )
238+ # Didn't find a successful build; end of the failing streak
239+ # is unknown.
240+ first_failing_build = None
241+ yield BuildFailure (latest_build , first_failing_build )
243242
244243 if not self .connected_workers :
245244 yield BuilderDisconnected (self )
@@ -619,8 +618,9 @@ def builder(self):
619618 @cached_property
620619 def affected_builds (self ):
621620 result = {"Latest build" : self .latest_build }
622- if self .first_failing_build :
623- result ["Breaking build" ] = self .first_failing_build
621+ first_failing = self .first_failing_build
622+ if first_failing and first_failing != self .latest_build :
623+ result ["Breaking build" ] = first_failing
624624 return result
625625
626626
0 commit comments