From: Erik Faye-Lund Date: Wed, 21 Aug 2013 00:01:53 GMT Subject: Re: CPPCheck found 24 high risk bugs in Git v.1.8.3.4 Message-ID: In-Reply-To: <87y57wnf03.fsf@igel.home> On Wed, Aug 21, 2013 at 1:01 AM, Andreas Schwab wrote: > Erik Faye-Lund writes: > >> I don't see how it's undefined. It's using the memory that 'pos' >> *points to* that is undefined, no? The difference between 'pos' and >> 'str' should still be the same, it's not like realloc somehow >> magically updates 'pos'... > > It does. Think of segmented architectures, where freeing a pointer > invalidates its segment, so that even loading the value of the pointer > traps. Probably no such architecture is in use any more, though. > Wow, you're right. And since doing it the right way is pretty much the same complexity (and possibly even a bit easier to follow), that's probably the best thing to go with, then. Thanks for keeping me straight!