The problem appears to be time-out consistency issue and I've come up with a new way to address this issue, rather than trying to put a band-aid on the problem I decided to completely redo the way time-outs are tracked.
I am having a difficult time finding suitable servers for testing these changes to insure that everything works as intended. Unfortunately none of my test servers display any type of delay when entering a folder for the first time.
The timeout is intended to be adaptive to the action being performed, most commands are instant, these commands have a 20 second timeout, any command sent via a raw command has a 10min timeout regardless of the command.
A special command such as STAT -L, is supposed to have a 2 minute timeout, but due to an issue with managing the timeouts it is using the 20 second timeout. ARGH.
As soon as the server sends the first line of the status reply the timeout is supposed to be reset, the timeout doesn't define how long the operation can take, but rather how long FlashFXP will wait for the server to actually send the reply, and how long FlashFXP will wait between each segment of data.
Whether or not it actually works as intended is another story, as I need to come up with a better way of testing this.
|