summaryrefslogtreecommitdiff
path: root/services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp')
-rw-r--r--services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp b/services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp
index 79dcd159d3..fb5f0cb30f 100644
--- a/services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp
+++ b/services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp
@@ -765,6 +765,7 @@ Error AidlComposer::execute() {
auto status = mAidlComposerClient->executeCommands(commands, &results);
if (!status.isOk()) {
ALOGE("executeCommands failed %s", status.getDescription().c_str());
+ mWriter.reset();
return static_cast<Error>(status.getServiceSpecificError());
}
@@ -776,6 +777,7 @@ Error AidlComposer::execute() {
const auto index = static_cast<size_t>(cmdErr.commandIndex);
if (index < 0 || index >= commands.size()) {
ALOGE("invalid command index %zu", index);
+ mWriter.reset();
return Error::BAD_PARAMETER;
}