I have not used this functionality, and therefore I have not experienced this bug.
I looked it up in the 2.6 help and it reads:
TIMEOUT [expN3]
A TIMEOUT clause determines how long the READ is in effect. [expN3] specifies the number of seconds that can elapse without user input before the READ is terminated. If the READ is terminated by a TIMEOUT clause, READKEY() returns 20 if changes have not been made to any object. If changes have been made, READKEY() returns 276.
When READ is terminated by a TIMEOUT clause, any changes made to the field being edited when the READ ends are discarded. However, changes made to other fields are saved.Best regards,
Rick C. Hodgin
>Here is some code derived from legacy code. The TIMEOUT clause does not cause a time out after the specified number of seconds. Is this a known bug?
>
>
local t, ln
>for ln = 1 to 6
> t = seconds()
> msgbox( "hello", m.ln * 10 )
> ? m.ln, seconds()-t
>next
>
>FUNCTION MsgBox
> PARAMETER m.tcMsg, tnTimeout
>
> local lnChoice, lcMsg
>
> lnChoice = 0
>
> lcMsg = m.tcMsg + " (This message should disappear after " + ltrim( str( m.tnTimeout ) ) + " seconds of complete inactivity.)"
>
> DEFINE WINDOW MsgBox AT 0,0 SIZE 10, 100 SYSTEM FLOAT SHADOW TITLE "msgbox"
>
> ACTIVATE WINDOW MsgBox NOSHOW
>
> @ 2, 2 say m.lcMsg
> @ 10, 50 GET m.lnChoice FUNCTION '*H'
>
> ACTIVATE WINDOW MsgBox
>
> READ CYCLE MODAL TIMEOUT m.tnTimeout
>
> RELEASE WINDOW MsgBox
>
> RETURN