DOCUMENT:Q194886 10-DEC-1999 [foxpro] TITLE :BUG: Repeatedly Calling Genxtab Can Cause Memory Leak PRODUCT :Microsoft FoxPro PROD/VER:WINDOWS:3.0b,5.0,5.0a,6.0 OPER/SYS: KEYWORDS:kbMiscTools kbvfp600 kbXBase ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Visual FoxPro for Windows, versions 3.0b, 5.0, 5.0a, 6.0 ------------------------------------------------------------------------------- SYMPTOMS ======== Repeatedly calling Genxtab.prg within a program causes Visual FoxPro 3.0x and 5.0x to lose one memory handle in each iteration of the loop after the first pass. This problem does not occur in Visual FoxPro 6.0. STATUS ====== Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. MORE INFORMATION ================ Steps to Reproduce Behavior --------------------------- 1. Create a program that contains the following code: CLEAR SET SAFETY OFF FOR i = 1 TO 200 ? "Run Number: " + STR(i), SYS(1016), SYS(1011) SELECT to_country,ship_via,order_net FROM orders ; ORDER BY to_country, ship_via ; GROUP BY to_country, ship_via INTO TABLE bob DO (_GENXTAB) WITH ('bob1'), , , , , , ,.T. NEXT SET SAFETY ON 2. Run the program and notice the number of memory handles, the last number on each line, increase by one with each iteration after the first pass. Eventually, the system may report a memory error such as: Windows 95 VFP caused an invalid page fault in module KERNEL32.DLL at . -or- Windows NT 4.0 vfp.exe Exception: access violation(0x0000005), Address: However, to experience the system error message, you may need to increase the number of iterations in the FOR...NEXT loop. Additional query words: ====================================================================== Keywords : kbMiscTools kbvfp600 kbXBase Technology : kbVFPsearch kbAudDeveloper kbVFP300b kbVFP500 kbVFP600 kbVFP500a Version : WINDOWS:3.0b,5.0,5.0a,6.0 Issue type : kbbug ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 1999.