FIX: ALINES() Leaks Memory Handle with Empty String

This article was previously published under Q279140
This article has been archived. It is offered "as is" and will no longer be updated.
SYMPTOMS
When you call the ALINES function with an empty string, Visual FoxPro 6.0 increments the number of memory handles by one.
STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article. This bug was corrected in the latest service pack for Visual Studio 6.0.

For additional information about Visual Studio service packs, click the following article numbers to view the articles in the Microsoft Knowledge Base:
194022 INFO: Visual Studio 6.0 Service Packs, What, Where, Why

194295 HOWTO: Tell That a Visual Studio Service Pack Is Installed
To download the latest Visual Studio service pack, visit the following Microsoft Web site:
MORE INFORMATION

Steps to Reproduce Behavior

Run the following code from a program (.prg) file:
Local lniFor lni = 1 to 10	local array laTest[1]	=alines(laTest, '')	_Calcmem = lni  && store counter to survive clear all	Clear all 	?SYS(1011), int(_calcmem)	Local lni	lni = _calcmemEndforRETURN				
After the code runs, two numbers appear. The first column indicates the memory handles as reported by SYS(1011). The second number indicates the iteration of the loop. Note that Visual FoxPro adds one handle per iteration.
Properties

Article ID: 279140 - Last Review: 10/21/2013 03:37:57 - Revision: 1.2

  • Microsoft Visual FoxPro 6.0 Professional Edition
  • kbnosurvey kbarchive kbbug kbcodesnippet kbfix kbvs600sp5fix kbxbase KB279140
Feedback