[Evolution-hackers] The new EMsgPort implementation leaks a little bit



Hey Matthew,

I noticed from existing source code that the messages being pushed on
the GAsyncQueue are allocated ones that should be freed within the
EMsgPort implementation.

For example look at this one in camel-operation.c (the cancel method):

msg = g_malloc0(sizeof(*msg));
e_msgport_put(cc->cancel_port, (EMsg *)msg);

You push that msg on the async-queue instance, right?

I haven't found any location where you are popping that message and
freeing it.

My debugger (valgrind like, I'm testing with TotalView) also tells me
that the msg in camel-operation.c is indeed leaking and that this
happens each cancellation.


-- 
Philip Van Hoof, software developer
home: me at pvanhoof dot be
gnome: pvanhoof at gnome dot org
work: vanhoof at x-tend dot be
blog: http://pvanhoof.be/blog




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]