summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
author Jean-Baptiste Queru <jbq@google.com> 2010-11-23 11:17:48 -0800
committer Android Git Automerger <android-git-automerger@android.com> 2010-11-23 11:17:48 -0800
commitffb0795daf64dac9f5c73ab7861b702e5b1169a1 (patch)
treefd813e2f02807713be374338cb452dd2e5e81a2f /libs
parentfe67926ecdc8be83354ce86feb3a7a1ad82f1675 (diff)
parentec756056abceb3c5ffe77174cf38328b9fcc1b75 (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.cpp9
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 {