summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author SongFerng Wang <songferngwang@google.com> 2024-06-04 08:59:33 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-06-04 08:59:33 +0000
commit57f25a882ef47a9ecddd54ea8a94db0a95f1d24c (patch)
treec3fccbbcf4622fc40b123fc9d27f4505d0d3fbbf
parent3ab283cb80c48846dd670a5dfad2fc2e20a3f418 (diff)
parent025e56e518f79be0bb4b1256c1224a9f5854d27e (diff)
Merge "Fix crash java.lang.IllegalArgumentException" into main
-rw-r--r--packages/SettingsLib/src/com/android/settingslib/qrcode/QrDecorateView.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/qrcode/QrDecorateView.java b/packages/SettingsLib/src/com/android/settingslib/qrcode/QrDecorateView.java
index e034254e64ec..eb57b40978dc 100644
--- a/packages/SettingsLib/src/com/android/settingslib/qrcode/QrDecorateView.java
+++ b/packages/SettingsLib/src/com/android/settingslib/qrcode/QrDecorateView.java
@@ -24,6 +24,7 @@ import android.graphics.PorterDuff;
import android.graphics.PorterDuffXfermode;
import android.graphics.RectF;
import android.util.AttributeSet;
+import android.util.Log;
import android.util.TypedValue;
import android.view.View;
@@ -33,6 +34,7 @@ public class QrDecorateView extends View {
private static final float CORNER_STROKE_WIDTH = 4f; // 4dp
private static final float CORNER_LINE_LENGTH = 264f; // 264dp
private static final float CORNER_RADIUS = 16f; // 16dp
+ private static final String TAG = "QrDecorateView";
private final int mCornerColor;
private final int mFocusedCornerColor;
@@ -94,6 +96,10 @@ public class QrDecorateView extends View {
@Override
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
super.onLayout(changed, left, top, right, bottom);
+ if (getWidth() <= 0 || getHeight() <= 0) {
+ Log.e(TAG, "width and height must be > 0");
+ return;
+ }
if (mMaskBitmap == null) {
mMaskBitmap = Bitmap.createBitmap(getWidth(), getHeight(), Bitmap.Config.ARGB_8888);