4 Aug
2020
4 Aug
'20
6:51 p.m.
Em ter., 4 de ago. de 2020 às 13:06, Sjoerd Mullender sjoerd@monetdb.org escreveu:
On 04/08/2020 17.34, Ranier Vilela wrote:
Em seg., 3 de ago. de 2020 às 12:47, Sjoerd Mullender <sjoerd@monetdb.org mailto:sjoerd@monetdb.org> escreveu:
I don't think there is a leak. A little higher in the function, before all the conditions that
you're
looking at, there is the statement s->stream_data.p = (void *) bzp; so bzp is saved first and s->stream_data.p and bzp are actually the
same
pointer. I'm not sure why the assignment you're referring to since they are already the same. It could be historical, but I'd have to look at the logs.
And about 2 and 3?
About 2: The call to stream_bzclose calls free(s-stream_data.p) which is the same as bzp, so that gets freed.
About 3: c is assigned to s->stream_data.p about half way in the function. As long as s doesn't get freed without first freeing s->stream_data.p, we're good. And freeing s->stream_data.p happens in curl_destroy when that gets called.
Nice, Thank you.
regards, Ranier Vilela