SF: Fix the delivery of visible and damage rects to HWC

The storage space for the visible and damage regions was inside the
HWCLayerVersion1 class, which is temporarily allocated while using
an iterator. As such, the storage has been deleted by the time the
HWC gets a pointer to it sometime later and hence the HWC reads
garbage in all layers.

This commit moves the storage into the DisplayData structure and hence
it persists until the next frame.

Bug 28200888

Change-Id: If7cc8d2de49e3e66e9d17cc45934d8e544576026
2 files changed