Re: [PATCH] Fix set_work_tree on cygwin
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Aug 2, 2007, 15:38 UTC
- Message-ID
- <Pine.LNX.4.64.0708021636470.14781@racer.site>
- In-Reply-To
- <81b0412b0708020825q4b64c47r3fa1d67858271b1e@mail.gmail.com>
Hi,
On Thu, 2 Aug 2007, Alex Riesen wrote:
Show 10 quoted lines
>@@ -209,7 +209,8 @@ const char *set_work_tree(const char *dir)
> len = strlen(dir);
> if (len > postfix_len && !strcmp(dir + len - postfix_len,
> "/" DEFAULT_GIT_DIR_ENVIRONMENT)) {
>- strncpy(dir_buffer, dir, len - postfix_len);
>+ strncpy(dir_buffer, dir, len - postfix_len);
>+ dir_buffer[len - postfix_len] = '\0';
>
> /* are we inside the default work tree? */
> rel = get_relative_cwd(buffer, sizeof(buffer), dir_buffer);Darn, darn, darn. strncpy does _not_ NUL terminate. I keep forgetting that.
Better use strlcpy()?
Ciao, Dscho