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(