JDK-4499542 : Fix for Bug 4475540 forces us to construct a new Deflater everytime
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.util
  • Affected Version: 1.4.0
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2001-09-04
  • Updated: 2002-03-27
  • Resolved: 2001-09-14
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other Other
1.3.1_04 04Fixed 1.4.0Fixed
Related Reports
Relates :  
Description

Name: nt126004			Date: 09/04/2001


java version "1.4.0-beta2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta2-b77)
Java HotSpot(TM) Client VM (build 1.4.0-beta2-b77, mixed mode)


  Fix for bug 4475540 that went into 1.4 beta 2 broke our code
that tried to reuse a Deflater object in different DeflaterOutputStreams.
(DeflaterOutputStream.close now calls end() on the Deflater object that
was passed into it on the constructor.)
So it appears that you are forcing us to make a new Deflater everytime
we want to use one with DeflaterOutputStream.
If that is the case why is there Deflater.reset() or even a public Deflater
class for that matter?
(Review ID: 131342) 
======================================================================

Comments
CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: 1.3.1_04 merlin-beta3 FIXED IN: 1.3.1_04 merlin-beta3 INTEGRATED IN: 1.3.1_04 merlin-beta3 VERIFIED IN: merlin-beta3
14-06-2004

WORK AROUND Name: nt126004 Date: 09/04/2001 Customer Workaround: To get our code to work under 1.4 beta 2 we had to change it to always construct a new Deflater object and pass it to each DeflaterOutputStream. ======================================================================
11-06-2004

PUBLIC COMMENTS Now we call end() only if the Deflater was created by DeflaterOutputStream. If Deflater is provided from outside, then it is user's responsibility to call end() on it. Same is true for InflaterInputStream/Inflater.
10-06-2004

EVALUATION To be fixed. ###@###.### 2001-09-08
08-09-2001