On 20. 1. 26 09:51, Bert Huijben via dev wrote:
Hi All,
Not really active here any more. Thanks for picking up where we left years
ago. Really happy to see that you all move to get things forward again.
+1 on what Branko mentioned here... Please be very careful with global
state, being used. The rest is nicely per context.
--------------
One thing I still have on my mind but not written down.... and mostly out
of context here:
What is not properly documented is that on Windows when you use Serf built
as DLL the comparison of the functions in one of the Serf macros is not
guaranteed to work... And in practice it doesn't work there, so the old vs
new bucket type detection breaks. I think currently all Windows users work
around this by using the build static. For the future I think we should get
that address via a helper function to make sure we can do the ==comparison
safely.
Are you referring to things like this:
extern const serf_bucket_type_t serf_bucket_type_response;
#define SERF_BUCKET_IS_RESPONSE(b) SERF_BUCKET_CHECK((b), response)
which seems OK to me, though I'd have done this with a function call. Or
could you point me to the macro you had in mind?
For 1.3 ignoring those code paths is mostly safe, but for 1.5+ it should be
made safe or the limitations documented
Agreed.
-- Brane