summaryrefslogtreecommitdiff
path: root/tests/HwAccelerationTest/src
diff options
context:
space:
mode:
authorNarayan Kamath <narayan@google.com>2017-03-02 19:26:44 +0000
committerNarayan Kamath <narayan@google.com>2017-03-08 10:07:03 +0000
commitb192344234dcee215462e6218cf1c4384b9916f1 (patch)
tree990982dd7557155e89e2ffb7fc0b0472f7927cab /tests/HwAccelerationTest/src
parent07be4d67813bdda4479e0e5a482f76b3f52160e7 (diff)
MathUtils: Remove static Random field.
This is unsafe because the random will be seeded in the zygote, which means all processes on the system generate the same sequence of random numbers. Fortunately, this code is only used in tests, so get rid of it. Note that the Random that backs Math.random() is reseeded after every fork to avoid a similar issue. Bug: 35918685 Test: HwAccelerationTest Change-Id: Ice79aa25bb9017f7a0b91659afe04112850cb74b
Diffstat (limited to 'tests/HwAccelerationTest/src')
-rw-r--r--tests/HwAccelerationTest/src/com/android/test/hwui/PathDestructionActivity.java18
1 files changed, 11 insertions, 7 deletions
diff --git a/tests/HwAccelerationTest/src/com/android/test/hwui/PathDestructionActivity.java b/tests/HwAccelerationTest/src/com/android/test/hwui/PathDestructionActivity.java
index 4177725e3847..5cede6540410 100644
--- a/tests/HwAccelerationTest/src/com/android/test/hwui/PathDestructionActivity.java
+++ b/tests/HwAccelerationTest/src/com/android/test/hwui/PathDestructionActivity.java
@@ -25,6 +25,8 @@ import android.os.Bundle;
import android.util.MathUtils;
import android.view.View;
+import java.util.Random;
+
/**
* The point of this test is to ensure that we can cause many paths to be created, drawn,
* and destroyed without causing hangs or crashes. This tests the native reference counting
@@ -57,10 +59,11 @@ public class PathDestructionActivity extends Activity {
private Path getRandomPath() {
float left, top, right, bottom;
- left = MathUtils.random(getWidth() - MIN_SIZE);
- top = MathUtils.random(getHeight() - MIN_SIZE);
- right = left + MathUtils.random(getWidth() - left);
- bottom = top + MathUtils.random(getHeight() - top);
+ Random r = new Random();
+ left = r.nextFloat() * (getWidth() - MIN_SIZE);
+ top = r.nextFloat() * (getHeight() - MIN_SIZE);
+ right = left + r.nextFloat() * (getWidth() - left);
+ bottom = top + r.nextFloat() * (getHeight() - top);
Path path = new Path();
path.moveTo(left, top);
path.lineTo(right, top);
@@ -71,9 +74,10 @@ public class PathDestructionActivity extends Activity {
}
private int getRandomColor() {
- int red = MathUtils.random(255);
- int green = MathUtils.random(255);
- int blue = MathUtils.random(255);
+ Random r = new Random();
+ int red = r.nextInt(255);
+ int green = r.nextInt(255);
+ int blue = r.nextInt(255);
return 0xff000000 | red << 16 | green << 8 | blue;
}