Fixes regarding fcl-web
The biggest change is: fphttpclient: remove OnIdle and add protected methods so that the feature can be added in a descendant
I decided to remove the OnIdle event because it is unreliable. When having an SSL connection (HTTPS), when using OnIdle, the fpSelect-loop can deadlock itself if the server is gone. fpSelect just reports no data and no error on the (from the server closed) socket. Only when actually reading the data from the socket you get an error and can close the connection.
Therefore I removed the OnIdle loop and the feature entirely. I introduced protected virtual methods ReadFromSocket
and WriteToSocket
that can be overridden and where this feature can be implemented. It makes the fphttpclient.pp
code cleaner as well.
Everything else should be easy-to-follow fixes.
Thank you.