Microsoft KB Archive/297826

= FIX: CHRSAW Function Can Cause System to Stop Responding When AutoYield = .F. =

Article ID: 297826

Article Last Modified on 10/16/2002

-

APPLIES TO


 * Microsoft Visual FoxPro 5.0 Standard Edition
 * Microsoft Visual FoxPro 5.0a
 * Microsoft Visual FoxPro 6.0 Professional Edition

-



This article was previously published under Q297826



SYMPTOMS
If the Visual FoxPro AutoYield property is set to .F., the CHRSAW function may not be able to check the keyboard buffer properly, and may cause the system to stop responding (hang).



CAUSE
The AutoYield property prevents Windows event messages from interrupting program flow. Therefore, when CHRSAW checks to see whether any keyboard events have come in, it can get into a state in which it continues to look for an event, but can't find one.



STATUS
This problem was corrected in Microsoft Visual FoxPro version 7.0 for Windows.



Steps to Reproduce Behavior
The following code will eventually reproduce the behavior, although perhaps not on the first run. If you open the Task Manager, you will see that Visual FoxPro is taking all available CPU time. *!* Q297826 FIX: CHRSAW Function Can Hang System When AutoYield = .F. CLEAR

_VFP.AutoYield = .F. lnCount = 1000 lnStart = SECONDS

FOR lnI = 1 TO lnCount @ 1,1 SAY lnI llTest = CHRSAW ENDFOR

? SECONDS - lnStart

Keywords: kbbug kbfix kbcodesnippet kbvfp700fix KB297826

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.