[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH] Don't ignore multiple --target switches

From: C. Michael Pilato <cmpilato_at_collab.net>
Date: 2006-05-31 23:38:33 CEST

Hyrum K. Wright wrote:
> C. Michael Pilato wrote:
>
>>Having trouble typing clearly today, it seems...
>>
>>C. Michael Pilato wrote:
>>
>>>Hyrum K. Wright wrote:
>>>
>>>
>>>>This patch fixes a bug where multiple --target switches fail silently
>>>>for all but the final one. Instead, this patch concatenates all targets
>>>>specified by multiple --target switches into one array.
>>>>
>>>>Coincidentally, this patch also fixes a memory leak, since we were just
>>>>dropping the previous list of targets when we encountered additional
>>>>--target switches.
>>>
>>>Eh, we're still leaking memory with this patch because apr_array_append()
>>>doesn't reuse either of the arrays it's given as input. So it takes array A
>>>and B and makes a new C (wasting both A and B). If a third --targets comes
>>>along, it'll waste another pair of arrays. And so on. But we're only
>>>talking about an amount of memory proportional to the number of times
>>>--targets shows up as an option, and not alot of memory at that.
>>
>>To clarify, it only wastes the memory needed for the array structure, not
>>its elements.
>
>
> Understood. Is this type of waste acceptable, or would the ideal
> solution be to make sure we clean up after ourselves by using a subpool?

Because of the low cost here, I'd personally just drop a little comment
saying, "Hey, we're wasting a handful of bytes (the size of an array header)
here to avoid the overhead and complexity of a subpool."

-- 
C. Michael Pilato <cmpilato@collab.net>
CollabNet   <>   www.collab.net   <>   Distributed Development On Demand

Received on Wed May 31 23:39:24 2006

This is an archived mail posted to the Subversion Dev mailing list.