update_engine: Prevent the InplaceGenerator to add MOVEs to block 0.
While we normally don't generate MOVE operations to/from the block 0,
the cycle breaker logic can use the block 0 as scratch space, creating
MOVE operations to and from the block 0.
This patch prevents it from picking the block 0 as scratch space and
logs a message when that would happend.
BUG=chromium:480751,chromium:500423
TEST=Added unittest.
Change-Id: I91f1b3c426a9d06aae5b685e2e901c7e448d8677
Reviewed-on: https://chromium-review.googlesource.com/286623
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Tested-by: Alex Deymo <deymo@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
8 files changed