Fix BufferReleaseChannel flagging.

Bug: 294133380
Test: presubmits
Flag: com.android.graphics.libgui.flags.buffer_release_channel
Change-Id: Iad39b9eb77b57e32521f7ba447a66510967c8209
diff --git a/libs/gui/BLASTBufferQueue.cpp b/libs/gui/BLASTBufferQueue.cpp
index f13d499..767f3e8 100644
--- a/libs/gui/BLASTBufferQueue.cpp
+++ b/libs/gui/BLASTBufferQueue.cpp
@@ -525,7 +525,9 @@
     }
     mNumAcquired--;
     updateDequeueShouldBlockLocked();
-    mBufferReleaseReader->interruptBlockingRead();
+    if (mBufferReleaseReader) {
+        mBufferReleaseReader->interruptBlockingRead();
+    }
     BBQ_TRACE("frame=%" PRIu64, callbackId.framenumber);
     BQA_LOGV("released %s", callbackId.to_string().c_str());
     mBufferItemConsumer->releaseBuffer(it->second, releaseFence);
@@ -857,7 +859,10 @@
         mNumDequeued--;
         updateDequeueShouldBlockLocked();
     }
-    mBufferReleaseReader->interruptBlockingRead();
+
+    if (mBufferReleaseReader) {
+        mBufferReleaseReader->interruptBlockingRead();
+    }
 };
 
 bool BLASTBufferQueue::syncNextTransaction(
@@ -1191,7 +1196,10 @@
             bbq->mSubmitted.clear();
             bbq->updateDequeueShouldBlockLocked();
         }
-        bbq->mBufferReleaseReader->interruptBlockingRead();
+
+        if (bbq->mBufferReleaseReader) {
+            bbq->mBufferReleaseReader->interruptBlockingRead();
+        }
 
         return OK;
     }
@@ -1215,7 +1223,10 @@
             bbq->mMaxDequeuedBuffers = maxDequeuedBufferCount;
             bbq->updateDequeueShouldBlockLocked();
         }
-        bbq->mBufferReleaseReader->interruptBlockingRead();
+
+        if (bbq->mBufferReleaseReader) {
+            bbq->mBufferReleaseReader->interruptBlockingRead();
+        }
 
         size_t newFrameHistorySize = maxBufferCount + 2; // +2 because triple buffer rendering
         // optimize away resizing the frame history unless it will grow
@@ -1251,7 +1262,9 @@
             bbq->updateDequeueShouldBlockLocked();
         }
 
-        bbq->mBufferReleaseReader->interruptBlockingRead();
+        if (bbq->mBufferReleaseReader) {
+            bbq->mBufferReleaseReader->interruptBlockingRead();
+        }
         return NO_ERROR;
     }
 
@@ -1272,7 +1285,9 @@
             bbq->updateDequeueShouldBlockLocked();
         }
 
-        bbq->mBufferReleaseReader->interruptBlockingRead();
+        if (bbq->mBufferReleaseReader) {
+            bbq->mBufferReleaseReader->interruptBlockingRead();
+        }
         return NO_ERROR;
     }
 
@@ -1292,7 +1307,9 @@
             bbq->updateDequeueShouldBlockLocked();
         }
 
-        bbq->mBufferReleaseReader->interruptBlockingRead();
+        if (bbq->mBufferReleaseReader) {
+            bbq->mBufferReleaseReader->interruptBlockingRead();
+        }
         return NO_ERROR;
     }