diff options
| author | 2010-11-23 11:17:48 -0800 | |
|---|---|---|
| committer | 2010-11-23 11:17:48 -0800 | |
| commit | ffb0795daf64dac9f5c73ab7861b702e5b1169a1 (patch) | |
| tree | fd813e2f02807713be374338cb452dd2e5e81a2f /libs | |
| parent | fe67926ecdc8be83354ce86feb3a7a1ad82f1675 (diff) | |
| parent | ec756056abceb3c5ffe77174cf38328b9fcc1b75 (diff) | |
am 9df7f313: am f0f6c54b: Merge "frameworks/base: Destroy the overlay even if there is an error"
* commit '9df7f31359866a77a47c9fab3171c71715fd0056':
frameworks/base: Destroy the overlay even if there is an error
Diffstat (limited to 'libs')
| -rw-r--r-- | libs/ui/Overlay.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/libs/ui/Overlay.cpp b/libs/ui/Overlay.cpp index 3aa8950af5..b082c534a0 100644 --- a/libs/ui/Overlay.cpp +++ b/libs/ui/Overlay.cpp @@ -96,7 +96,6 @@ void* Overlay::getBufferAddress(overlay_buffer_t buffer) } void Overlay::destroy() { - if (mStatus != NO_ERROR) return; // Must delete the objects in reverse creation order, thus the // data side must be closed first and then the destroy send to @@ -104,9 +103,15 @@ void Overlay::destroy() { if (mOverlayData) { overlay_data_close(mOverlayData); mOverlayData = NULL; + } else { + LOGD("Overlay::destroy mOverlayData is NULL"); } - mOverlayRef->mOverlayChannel->destroy(); + if (mOverlayRef != 0) { + mOverlayRef->mOverlayChannel->destroy(); + } else { + LOGD("Overlay::destroy mOverlayRef is NULL"); + } } status_t Overlay::getStatus() const { |