On Friday 21 of August 2009 15:59:34 Daniel Stenberg wrote:
> On Fri, 21 Aug 2009, Kamil Dudka wrote:
> >> Here's a minor update that should make pause and bandwidth limiting etc
> >> to still work too.
> >
> > Looks good to me, though I haven't tested the patch yet. In fact it's
> > almost exactly the same what I was going to prepare as patch :-) What
> > about creating the 'waitfor' member within 'struct connectdata'? Then we
> > could remove it completely from 'struct ssh_conn' and let ssh.c stuff
> > keep the value at only one place.
>
> Yeah, that'll be a lot cleaner. We should do that.
>
> > I'll test the patch ASAP.
>
> Great!

Bad news - the patch does not work. It ends up in a tight loop, now 
unfortunately without transferring any data. The functions readwrite_data()
and readwrite_upload() were not called at all.

I was playing with that today. There were several flaws. But generally, 
passing the 'waitfor' mask to 'keepon' within Curl_readwrite() can't help 
since the call of Curl_socket_ready() is also non-blocking.

Is Curl_readwrite() really the function which should block? I think we should 
solve the problem elsewhere.

Kamil

Reply via email to