Quoth David Bremner on Oct 06 at 8:04 am: > Austin Clements <aclements@csail.mit.edu> writes: > > > Quoth David Bremner on Oct 05 at 9:45 am: > >> Austin Clements <aclements@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.