cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: Bugfix: curl_multi_timeout ignores CURLOPT_TIMEOUT

From: Luke Dashjr <luke_at_openmethods.com>
Date: Wed, 26 Aug 2009 20:43:54 -0500

On Monday 24 August 2009 06:20:14 pm koettermarkus_at_gmx.de wrote:
> Daniel Stenberg wrote:
> > On Sat, 22 Aug 2009, Daniel Stenberg wrote:
> >>> http://curl.haxx.se/mail/lib-2009-05/0173.html
> >>
> >> Oh. I can't recall I've seen that (and if I did I've forgotten about
> >> it)... I'll check it closer within a few days.
> >
> > Luke, have you been running code with this patch since back then and
> > things work fine?

Honestly, I use my system libraries, and only made this patch to fix a problem
that was affecting my real project. So outside of testing that particular
problem via LD_LIBRARY_PATH, I don't think I've used it at all.

> > If so, what about the two FIXME comments in your patch? I'm especially
> > interested in the second one, as that seems like perhaps it does a
> > little too much. Does it ever trigger?

The FIXMEs are mostly unknowns that might potentially be problems, but I lack
the awareness of the overall cURL codebase to know for sure whether they are
actually possible. In both potential negative circumstances, however, I'm
pretty sure it would simply mean curl_multi_timeout does the same bug this
aims to fix. So in other words, this fixes most circumstances of the bug, but
there may be some exceptions that it doesn't fix.

> The patch is pretty similar to what I posted in ignorance of the patch,
> it works fine, passes all tests, but it is still plain wrong.
> Yes, it fixes behaviour for one case, but does not solve the real problem.

What's wrong? The function is called in all 3 cases I am aware of that the
timeout would otherwise be unset.

> The real problem is the difference in splay queued timeouts and the real
> timeout. *My* very own approach would be to unify splay & real-timeouts
> instead of fixing the behaviour of the broken idea.

I'm only trying to make cURL work as advertised, not do a rewrite of any
degree. My focus is on my project that uses cURL, not the library itself.

> Curl's got rather tight release cycles, how to deal with major changes
> linke this?

Is a bugfix considered a major change?

Luke
Received on 2009-08-27