JDK-6589458 : Some memory leaks/allocation conflicts in printing and fonts code, Win32
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 6u3
  • Priority: P4
  • Status: Closed
  • Resolution: Cannot Reproduce
  • OS: windows
  • CPU: x86
  • Submitted: 2007-08-06
  • Updated: 2011-01-19
  • Resolved: 2007-12-10
Related Reports
Relates :  
Relates :  
While working with 6536107 (GDI leak detected by opening the Print Dialog repeatedly), QA team performed some analysis against win32 native code. They have compiled JRE native code with a special compiler that inserts some additional checks when allocating/freeing native objects and found several problems. It's stated these problems may lead to some crashes and/or leaks.

See attached report for details.

EVALUATION I have looked at the printing related ones and do not find any of them to be real. ie they are all false positives - the tool cannot identify when a pointer is stored in a Java object and freed later by GC - the tool cannot identify when a pointer is assigned by passing its address to a function. - there are a couple of claimed conflicts where new is not used to allocate an object but delete is used to reclaim it. In the source "new" is in fact used but awt_new.cpp has apparently overriden the C++ new operator but not the delete operator. I doubt this is a real issue but should be addressed at an AWT level. I have attached an annotated version of the log with "ANALYSIS" comments. The attachment is analysis.txt The rest of the claimed problems are in awt_Font and related classes so since those and awt_new are owned by AWT I am re-assigning this to AWT for further evaluation.