Adds missing mutex lock in chppEnqueueTxErrorDatagram
Bug: 382694427
Test: chre_chpp_linux_tests pass
Change-Id: Ie2744a58c02b2ac5513583daa324e7a9891a26b0
diff --git a/chpp/transport.c b/chpp/transport.c
index 80611bb..5ba5751 100644
--- a/chpp/transport.c
+++ b/chpp/transport.c
@@ -1571,6 +1571,7 @@
// TODO(b/192359485): Consider removing this function, or making it more robust.
void chppEnqueueTxErrorDatagram(struct ChppTransportState *context,
enum ChppTransportErrorCode errorCode) {
+ chppMutexLock(&context->mutex);
bool resetting = (context->resetState == CHPP_RESET_STATE_RESETTING);
if (resetting) {
CHPP_LOGE("Discarding app error 0x%" PRIx8 " (resetting)", errorCode);
@@ -1593,6 +1594,7 @@
chppEnqueueTxPacket(context, CHPP_ATTR_AND_ERROR_TO_PACKET_CODE(
CHPP_TRANSPORT_ATTR_NONE, errorCode));
}
+ chppMutexUnlock(&context->mutex);
}
uint64_t chppTransportGetTimeUntilNextDoWorkNs(