BUG: Transforms Used in ExtCreateRegion Cause Leak

ID: Q153808

3.51 WINDOWS NT kbprg kbbuglist

The information in this article applies to:

SYMPTOMS

Calling ExtCreateRegion with a transformation matrix in the XForm parameter causes a small leak in system resources.

This can be viewed by watching the Private Bytes reported by the Performance Monitor (perfmon.exe) for the CSRSS process. Each call to ExtCreateRegion results in a slight increase to the allocated private bytes for CSRSS that are not returned to the system, even when the application exits. Several thousand calls to ExtCreateRegion are necessary before the leak is evident in the Performance Monitor.

RESOLUTION

To work around the problem, do not call ExtCreateRegion with a transformation. Always call this function with a NULL parameter for XForm. Similar functionality can be achieved by creating the region without a transformation and then setting a World Transformation with the SetWorldTransform function prior to using the Region.

If the goal is a transformed region without altering World Transformations, the application will have to perform the necessary matrix calculations to transform region data prior to its creation.

STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

Additional reference words: 3.51 KBCategory: kbprg kbbuglist KBSubcategory: GdiMisc

Keywords          : GdiMisc kbbuglist
Version           : 3.51
Platform          : NT WINDOWS

Last Reviewed: June 28, 1999