Fix range on blur intrinsic.

The intrinsic fails when the radius was 0. A blur
of radius 0 is a nop and should be disallowed. Fix the
test to allow sub-pixel radius to be selected.

bug 7273437

Change-Id: I2805674e29d557615eb7ac65c7910d4dffa28b58
diff --git a/graphics/java/android/renderscript/ScriptIntrinsicBlur.java b/graphics/java/android/renderscript/ScriptIntrinsicBlur.java
index 61e5d4f..2a04b42 100644
--- a/graphics/java/android/renderscript/ScriptIntrinsicBlur.java
+++ b/graphics/java/android/renderscript/ScriptIntrinsicBlur.java
@@ -69,13 +69,13 @@
     /**
      * Set the radius of the Blur.
      *
-     * Supported range 0-25
+     * Supported range 0 < radius <= 25
      *
      * @param radius The radius of the blur
      */
     public void setRadius(float radius) {
-        if (radius < 0 || radius > 25) {
-            throw new RSIllegalArgumentException("Radius out of range (0-25).");
+        if (radius <= 0 || radius > 25) {
+            throw new RSIllegalArgumentException("Radius out of range (0 < r <= 25).");
         }
         setVar(0, radius);
     }
diff --git a/tests/RenderScriptTests/ImageProcessing/src/com/android/rs/image/Blur25.java b/tests/RenderScriptTests/ImageProcessing/src/com/android/rs/image/Blur25.java
index a2e4298..0c6d41d 100644
--- a/tests/RenderScriptTests/ImageProcessing/src/com/android/rs/image/Blur25.java
+++ b/tests/RenderScriptTests/ImageProcessing/src/com/android/rs/image/Blur25.java
@@ -33,7 +33,7 @@
 
     private int MAX_RADIUS = 25;
     private ScriptC_threshold mScript;
-    private int mRadius = MAX_RADIUS;
+    private float mRadius = MAX_RADIUS;
     private float mSaturation = 1.0f;
     private Allocation mScratchPixelsAllocation1;
     private Allocation mScratchPixelsAllocation2;
@@ -51,13 +51,14 @@
 
 
     public void onBar1Changed(int progress) {
-        float fRadius = progress / 100.0f;
-        fRadius *= (float)(MAX_RADIUS);
-        mRadius = (int)fRadius;
+        mRadius = ((float)progress) / 100.0f * MAX_RADIUS;
+        if (mRadius <= 0.10f) {
+            mRadius = 0.10f;
+        }
         if (mUseIntrinsic) {
             mIntrinsic.setRadius(mRadius);
         } else {
-            mScript.invoke_setRadius(mRadius);
+            mScript.invoke_setRadius((int)mRadius);
         }
     }
 
@@ -111,7 +112,7 @@
         if (mUseIntrinsic) {
             mIntrinsic.setRadius(mRadius);
         } else {
-            mScript.invoke_setRadius(mRadius);
+            mScript.invoke_setRadius((int)mRadius);
         }
     }
 }