BUG: Previewing a report causes memory leak (216587)



The information in this article applies to:

  • Microsoft Visual FoxPro for Windows 5.0
  • Microsoft Visual FoxPro for Windows 5.0a
  • Microsoft Visual FoxPro for Windows 6.0

This article was previously published under Q216587

SYMPTOMS

Issuing a REPORT FORM <formname> PREVIEW with the Status Bar set ON causes Visual FoxPro to leak one memory handle each time you close the Preview window.

RESOLUTION

Issue a SET STATUS BAR OFF before previewing the report.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article. The Visual Studio 6.0 Service Pack 3 readme erroneously lists this bug as being fixed. Service Pack 3 did not fix this bug.

MORE INFORMATION

Steps to Reproduce Behavior

  1. Create a report, called mytest, containing a label in the Detail line saying "Test." (This is not a field from a table.)
  2. Open the Employee table and place the following code in a program and run it:
    SET STATUS BAR ON
    FOR i=1 to 10
      ? SYS(1011)
      REPORT FORM mytest.frx PREVIEW 
    NEXT
    						
  3. Run the program.
  4. When the Preview window appears, close it.
As the code runs, the notice that the number of memory handles increases by one after the first few iterations of the For.. Next loop. The problem occurs regardless of whether you close the window using the Close button on the toolbar or the Close box of the Preview form window.

The SYS(1011) function is used to determine how many memory handles are being used up by a process within FoxPro. This is an undocumented SYS function.

Modification Type:MajorLast Reviewed:2/11/2005
Keywords:kbBug kbpending kbReportWriter KB216587