Index: modules/luni/src/main/java/java/util/Arrays.java
===================================================================
--- modules/luni/src/main/java/java/util/Arrays.java.orig 2006-03-29 10:29:32.000000000 +0100
+++ modules/luni/src/main/java/java/util/Arrays.java 2006-04-19 08:22:55.000000000 +0100
@@ -1085,6 +1085,9 @@
* end > array.size()
*/
public static void sort(byte[] array, int start, int end) {
+ if (array == null) {
+ throw new NullPointerException();
+ }
if (start >= 0 && end <= array.length) {
if (start <= end)
sort(start, end, array);
@@ -1195,6 +1198,9 @@
* end > array.size()
*/
public static void sort(char[] array, int start, int end) {
+ if (array == null) {
+ throw new NullPointerException();
+ }
if (start >= 0 && end <= array.length) {
if (start <= end)
sort(start, end, array);
@@ -1310,6 +1316,9 @@
* @see Double#compareTo(Double)
*/
public static void sort(double[] array, int start, int end) {
+ if (array == null) {
+ throw new NullPointerException();
+ }
if (start >= 0 && end <= array.length) {
if (start <= end)
sort(start, end, array);
@@ -1425,6 +1434,9 @@
* @see Float#compareTo(Float)
*/
public static void sort(float[] array, int start, int end) {
+ if (array == null) {
+ throw new NullPointerException();
+ }
if (start >= 0 && end <= array.length) {
if (start <= end)
sort(start, end, array);
@@ -1535,6 +1547,9 @@
* end > array.size()
*/
public static void sort(int[] array, int start, int end) {
+ if (array == null) {
+ throw new NullPointerException();
+ }
if (start >= 0 && end <= array.length) {
if (start <= end)
sort(start, end, array);
@@ -1645,6 +1660,9 @@
* end > array.size()
*/
public static void sort(long[] array, int start, int end) {
+ if (array == null) {
+ throw new NullPointerException();
+ }
if (start >= 0 && end <= array.length) {
if (start <= end)
sort(start, end, array);
@@ -1762,6 +1780,9 @@
* end > array.size()
*/
public static void sort(Object[] array, int start, int end) {
+ if (array == null) {
+ throw new NullPointerException();
+ }
if (start >= 0 && end <= array.length) {
if (start <= end)
sort(start, end, array);
@@ -1822,6 +1843,9 @@
*/
public static void sort(Object[] array, int start, int end,
Comparator comparator) {
+ if (array == null) {
+ throw new NullPointerException();
+ }
if (start >= 0 && end <= array.length) {
if (start <= end)
sort(start, end, array, comparator);
@@ -1903,6 +1927,9 @@
* end > array.size()
*/
public static void sort(short[] array, int start, int end) {
+ if (array == null) {
+ throw new NullPointerException();
+ }
if (start >= 0 && end <= array.length) {
if (start <= end)
sort(start, end, array);
Index: modules/luni/src/test/java/tests/api/java/util/ArraysTest.java
===================================================================
--- modules/luni/src/test/java/tests/api/java/util/ArraysTest.java.orig 2006-04-19 08:14:45.000000000 +0100
+++ modules/luni/src/test/java/tests/api/java/util/ArraysTest.java 2006-04-19 08:31:40.000000000 +0100
@@ -1142,6 +1142,174 @@
reversedArray[counter] == originalReversedArray[counter]);
}
+ /*
+ * @tests java.util.Arrays#sort(byte[], int, int)
+ */
+ public void test_java_util_Arrays_sort_byte_array_NPE() {
+ byte[] byte_array_null = null;
+ try {
+ java.util.Arrays.sort(byte_array_null);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ try {
+ // Regression for HARMONY-378
+ java.util.Arrays.sort(byte_array_null,(int)-1,(int)1);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ }
+
+ /*
+ * @tests java.util.Arrays#sort(char[], int, int)
+ */
+ public void test_java_util_Arrays_sort_char_array_NPE() {
+ char[] char_array_null = null;
+ try {
+ java.util.Arrays.sort(char_array_null);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ try {
+ // Regression for HARMONY-378
+ java.util.Arrays.sort(char_array_null,(int)-1,(int)1);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ }
+
+ /*
+ * @tests java.util.Arrays#sort(double[], int, int)
+ */
+ public void test_java_util_Arrays_sort_double_array_NPE() {
+ double[] double_array_null = null;
+ try {
+ java.util.Arrays.sort(double_array_null);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ try {
+ // Regression for HARMONY-378
+ java.util.Arrays.sort(double_array_null,(int)-1,(int)1);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ }
+
+ /*
+ * @tests java.util.Arrays#sort(float[], int, int)
+ */
+ public void test_java_util_Arrays_sort_float_array_NPE() {
+ float[] float_array_null = null;
+ try {
+ java.util.Arrays.sort(float_array_null);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ try {
+ // Regression for HARMONY-378
+ java.util.Arrays.sort(float_array_null,(int)-1,(int)1);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ }
+
+ /*
+ * @tests java.util.Arrays#sort(int[], int, int)
+ */
+ public void test_java_util_Arrays_sort_int_array_NPE() {
+ int[] int_array_null = null;
+ try {
+ java.util.Arrays.sort(int_array_null);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ try {
+ // Regression for HARMONY-378
+ java.util.Arrays.sort(int_array_null,(int)-1,(int)1);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ }
+
+ /*
+ * @tests java.util.Arrays#sort(Object[], int, int)
+ */
+ public void test_java_util_Arrays_sort_object_array_NPE() {
+ Object[] object_array_null = null;
+ try {
+ java.util.Arrays.sort(object_array_null);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ try {
+ // Regression for HARMONY-378
+ java.util.Arrays.sort(object_array_null,(int)-1,(int)1);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ try {
+ // Regression for HARMONY-378
+ java.util.Arrays.sort(object_array_null,(int)-1,(int)1,
+ null);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ }
+
+ /*
+ * @tests java.util.Arrays#sort(long[], int, int)
+ */
+ public void test_java_util_Arrays_sort_long_array_NPE() {
+ long[] long_array_null = null;
+ try {
+ java.util.Arrays.sort(long_array_null);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ try {
+ // Regression for HARMONY-378
+ java.util.Arrays.sort(long_array_null,(int)-1,(int)1);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ }
+
+ /*
+ * @tests java.util.Arrays#sort(short[], int, int)
+ */
+ public void test_java_util_Arrays_sort_short_array_NPE() {
+ short[] short_array_null = null;
+ try {
+ java.util.Arrays.sort(short_array_null);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ try {
+ // Regression for HARMONY-378
+ java.util.Arrays.sort(short_array_null,(int)-1,(int)1);
+ fail("Should throw java.lang.NullPointerException");
+ } catch (NullPointerException e) {
+ // Expected
+ }
+ }
+
/**
* Sets up the fixture, for example, open a network connection. This method
* is called before a test is executed.