diff options
author | 2017-10-16 12:32:20 +0200 | |
---|---|---|
committer | 2017-10-16 17:49:00 +0200 | |
commit | deea6b08efef98ae2ef03d516356ab3438d089c8 (patch) | |
tree | 7a94d37a405e2a13c188e2f26bcde8309dfe70a0 /src/main/cpp | |
parent | 9c7a51e3632cdc54fbc859570ad125f06a6c7c75 (diff) |
BuildEventStreamer: clear a pending BuildStarted event first
If we receive an event indicating that the build is over, we first
post that event and then clear up all pending event by stating that
their prerequisite event was aborted (which we can safely assert, as
we know we will not process any further events).
Now, if a build is aborted (e.g., user interruption) before the build
starting event is generated, the streamer can receive a build-finished
event while still having an event (e.g., the raw command line) blocked
on the build-starting event. So the canonical order of clearing the stream
would send a build-finished event before the build-starting event, which
can be confusing to consumers of the stream. Therefore, if have to generate
an artificial aborted build-starting event, do so first (including clearing
the events blocked on the build-starting event) and only afterwards post
the build-finished event in the stream.
Change-Id: Ib33f16f74b7bee7a963df94bbcad7a56db9f07e3
PiperOrigin-RevId: 172305114
Diffstat (limited to 'src/main/cpp')
0 files changed, 0 insertions, 0 deletions