8211266: [TESTBUG] ZipFSTester.java failed intermittently in ZipFSTester.checkRead(): bound must be positive
authoramlu
Thu, 22 Nov 2018 10:30:47 +0800
changeset 52647 148124c951fd
parent 52646 05e830a833f7
child 52648 12956ca371c2
8211266: [TESTBUG] ZipFSTester.java failed intermittently in ZipFSTester.checkRead(): bound must be positive Reviewed-by: lancea
test/jdk/jdk/nio/zipfs/ZipFSTester.java
--- a/test/jdk/jdk/nio/zipfs/ZipFSTester.java	Thu Nov 22 02:32:36 2018 +0100
+++ b/test/jdk/jdk/nio/zipfs/ZipFSTester.java	Thu Nov 22 10:30:47 2018 +0800
@@ -484,8 +484,12 @@
             byte[] buf = new byte[1024];
             ByteBuffer bb = ByteBuffer.wrap(buf);
             for (int i = 0; i < 10; i++) {
-                int pos = rdm.nextInt((int)sbc.size());
-                int len = rdm.nextInt(Math.min(buf.length, expected.length - pos));
+                int pos = 0;
+                int len = 0;
+                if (expected.length > 0) {
+                    pos = rdm.nextInt((int) sbc.size());
+                    len = rdm.nextInt(Math.min(buf.length, expected.length - pos));
+                }
                 // System.out.printf("  --> %d, %d%n", pos, len);
                 bb.position(0).limit(len);    // bb.flip().limit(len);
                 if (sbc.position(pos).position() != pos ||