[PATCH 02/11] lib: Refactor _notmuch_database_link_message

Austin Clements aclements at csail.mit.edu
Mon Oct 6 06:25:16 PDT 2014


Quoth David Bremner on Oct 06 at  8:04 am:
> Austin Clements <aclements at csail.mit.edu> writes:
> 
> > Quoth David Bremner on Oct 05 at  9:45 am:
> >> Austin Clements <aclements at csail.mit.edu> writes:
> >> > +    void *local = talloc_new (NULL);
> >> 
> >> What's the advantage of using a local talloc context here? Is this just
> >> an optimization?
> >
> > There are a few allocations that wind up going in to this local
> > context because of the call to _consume_metadata_thread_id, so it's
> > more convenient to free this one context on return from
> > _notmuch_database_link_message than to worry about tracking these
> > various allocations.
> 
> OK, but wouldn't the lazy solution be to use message as a talloc
> context?

That would be the lazy solution, but it would also leak a bunch of
allocations that don't need to live past the end of
_notmuch_database_link_message.


More information about the notmuch mailing list