diff options
| author | 2021-04-15 14:04:15 -0400 | |
|---|---|---|
| committer | 2021-04-15 14:04:15 -0400 | |
| commit | dc323f27adbafade17e8f227c2d1512ccdc48ba8 (patch) | |
| tree | 95d16d9f021d86614a062fe6ec5a34cb6241b22c | |
| parent | 9692654a41a2d20ff7d6c590faecb2615cb58d87 (diff) | |
Fix size calculation
size is in bytes
Fixes: 185429940
Test: builds
Change-Id: Ib80eecd9ee8830877cfd9861d7126201d88d3f32
| -rw-r--r-- | libs/hwui/pipeline/skia/SkiaRecordingCanvas.cpp | 5 | ||||
| -rw-r--r-- | libs/hwui/pipeline/skia/TransformCanvas.cpp | 2 |
2 files changed, 3 insertions, 4 deletions
diff --git a/libs/hwui/pipeline/skia/SkiaRecordingCanvas.cpp b/libs/hwui/pipeline/skia/SkiaRecordingCanvas.cpp index 82814def6962..8ab9d2217a51 100644 --- a/libs/hwui/pipeline/skia/SkiaRecordingCanvas.cpp +++ b/libs/hwui/pipeline/skia/SkiaRecordingCanvas.cpp @@ -60,12 +60,11 @@ void SkiaRecordingCanvas::punchHole(const SkRRect& rect) { // Add the marker annotation to allow HWUI to determine where the current // clip/transformation should be applied SkVector vector = rect.getSimpleRadii(); - const int dataSize = 2; - float data[dataSize]; + float data[2]; data[0] = vector.x(); data[1] = vector.y(); mRecorder.drawAnnotation(rect.rect(), HOLE_PUNCH_ANNOTATION.c_str(), - SkData::MakeWithCopy(data, dataSize)); + SkData::MakeWithCopy(data, 2 * sizeof(float))); // Clear the current rect within the layer itself SkPaint paint = SkPaint(); diff --git a/libs/hwui/pipeline/skia/TransformCanvas.cpp b/libs/hwui/pipeline/skia/TransformCanvas.cpp index 6bfbb0d270b7..a6e4c4cf9ca7 100644 --- a/libs/hwui/pipeline/skia/TransformCanvas.cpp +++ b/libs/hwui/pipeline/skia/TransformCanvas.cpp @@ -22,7 +22,7 @@ using namespace android::uirenderer::skiapipeline; void TransformCanvas::onDrawAnnotation(const SkRect& rect, const char* key, SkData* value) { if (HOLE_PUNCH_ANNOTATION == key) { - auto* rectParams = static_cast<const float*>(value->data()); + auto* rectParams = reinterpret_cast<const float*>(value->data()); float radiusX = rectParams[0]; float radiusY = rectParams[1]; SkRRect roundRect = SkRRect::MakeRectXY(rect, radiusX, radiusY); |