JDK-7104147 : the fix for cr6887286 was not appropriate for backporting
  • Type: Bug
  • Component: client-libs
  • Sub-Component: 2d
  • Affected Version: 8
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2011-10-24
  • Updated: 2014-10-10
  • Resolved: 2012-04-24
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.
6u31-revFixed 7u6Fixed 8 b36Fixed
Related Reports
Relates :  
Relates :  
Fix for cr6887286 done in JDK8 makes a user visible change to the behaivor of the Java SE API and is therefor not ideal for a backport to JDK 7 and earlier.

This CR is to do an additional fix that will go into 6,7 AND 8. (The fix will make the code for WatchedImage more robust against possible memory leaks so it will be desierable to include in JDK8 even though JDK8 already includes the fix for cr6887286.) In other words, the problem "description" for this bug is exactly the same as that of cr6887286, but we will do a more backport-friendly fix that will compliemnt the fix already in JDK8 for cr6887286 and solve the issue by itself in earlier releases of JDK.

For a test case, please see the Java test case attached to cr6887286.
Note, if the fix for cr6887286 is already integrated, the testcase for cr6887286 will not help us reproduce this issue. I am looking into if it is possible to write a new different test case for this bug.

EVALUATION Memory leak in the list of ImageObservers watching an object. We use recursion to iterate over the list. So once the list gets too big, we overflow the stack. Fix is to execute a prune operation on ever add, so there is no way we can get indefinite growth of stale nodes.