diff options
| author | 2024-06-03 08:55:25 +0000 | |
|---|---|---|
| committer | 2024-06-03 08:55:25 +0000 | |
| commit | 025e56e518f79be0bb4b1256c1224a9f5854d27e (patch) | |
| tree | f70763a5e46a1904fde3679d5ee1ede00272e2ad | |
| parent | d61ea3349498d277411abf0b1326988a25f4fc28 (diff) | |
Fix crash java.lang.IllegalArgumentException
There is the java.lang.IllegalArgumentException: width and height must
be > 0, so to avoid this case.
Bug: 323290864
Test: verify the UI. Using the Scan QR code
Change-Id: I85f5f73c09ee27e79c2a47a42fc4921074cef06e
| -rw-r--r-- | packages/SettingsLib/src/com/android/settingslib/qrcode/QrDecorateView.java | 6 | 
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);  |