From 54b3ceeca27b67f4270d8b700b072f46959dba65 Mon Sep 17 00:00:00 2001 From: Brian Burkhalter Date: Wed, 3 Jan 2024 21:23:06 +0000 Subject: [PATCH] 8322877: java/io/BufferedInputStream/TransferTo.java failed with IndexOutOfBoundsException Reviewed-by: alanb, stsypanov --- src/java.base/share/classes/java/io/BufferedInputStream.java | 4 ++-- test/jdk/ProblemList.txt | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/java.base/share/classes/java/io/BufferedInputStream.java b/src/java.base/share/classes/java/io/BufferedInputStream.java index 97d1b9677c4..d4531d27db1 100644 --- a/src/java.base/share/classes/java/io/BufferedInputStream.java +++ b/src/java.base/share/classes/java/io/BufferedInputStream.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 1994, 2023, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1994, 2024, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -644,7 +644,7 @@ public class BufferedInputStream extends FilterInputStream { int avail = count - pos; if (avail > 0) { if (isTrusted(out)) { - out.write(getBufIfOpen(), pos, count); + out.write(getBufIfOpen(), pos, avail); } else { // Prevent poisoning and leaking of buf byte[] buffer = Arrays.copyOfRange(getBufIfOpen(), pos, count); diff --git a/test/jdk/ProblemList.txt b/test/jdk/ProblemList.txt index 904d4be664c..b2354126c06 100644 --- a/test/jdk/ProblemList.txt +++ b/test/jdk/ProblemList.txt @@ -503,7 +503,6 @@ java/lang/instrument/RetransformBigClass.sh 8065756 generic- # jdk_io java/io/pathNames/GeneralWin32.java 8180264 windows-all -java/io/BufferedInputStream/TransferTo.java 8322877 generic-all ############################################################################