From: Alex Riesen Date: Sun, 08 Jun 2008 21:34:38 GMT Subject: Re: [PATCH] progress.c: avoid use of dynamic-sized array Message-ID: <20080608213438.GA3073@steel.home> In-Reply-To: Boyd Lynn Gerber, Sun, Jun 08, 2008 17:26:15 +0200: > /* Force the last update */ > - char buf[strlen(msg) + 5]; > + char buf[128], *bufp; > + size_t len = strlen(msg) + 5; > struct throughput *tp = progress->throughput; > + > + bufp = (len < sizeof(buf)) ? buf : xmalloc(len + 1); It is just a temporary buffer, there is no urgent need to micro-optimize the allocation like that. Maybe just leave one of the buffers, the one on stack? It is just a progress message, snprintf will cut it, yes, but it is unlikely to cause any harm (unless you forget to \n-terminate it).