Merge "libgui: layer_state_t::read() check null" into rvc-dev-plus-aosp am: 4c924bab94 am: e6f76cfafc am: 567239b336

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/12184116

Change-Id: I2a35ec39c28b72c47d8baf4688ebab92e1835391
diff --git a/libs/gui/LayerState.cpp b/libs/gui/LayerState.cpp
index 55dbcd1..b215756 100644
--- a/libs/gui/LayerState.cpp
+++ b/libs/gui/LayerState.cpp
@@ -176,7 +176,12 @@
         sidebandStream = NativeHandle::create(input.readNativeHandle(), true);
     }
 
-    colorTransform = mat4(static_cast<const float*>(input.readInplace(16 * sizeof(float))));
+    const void* color_transform_data = input.readInplace(16 * sizeof(float));
+    if (color_transform_data) {
+        colorTransform = mat4(static_cast<const float*>(color_transform_data));
+    } else {
+        return BAD_VALUE;
+    }
     cornerRadius = input.readFloat();
     backgroundBlurRadius = input.readUint32();
     cachedBuffer.token = input.readStrongBinder();