threads / patch / 7188

patchsetup_git_directory_gently: fix off-by-one error

Subject: [PATCH] setup_git_directory_gently: fix off-by-one error

## tl;dr

One message between Mar 11, 2007 and Mar 11, 2007. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Matthias Lederhofer· Mar 11, 2007, 01:35 UTC · lore
don't tell getcwd that the buffer has one spare byte for an extra /
Signed-off-by: Matthias Lederhofer <matled@gmx.net>
---
gdb session with PATH_MAX set to 2048:
Breakpoint 5, setup_git_directory_gently (nongit_ok=0x0) at
setup.c:253
253             cwd[len] = 0;
$ print sizeof(cwd)
$14 = 2049
$ print len
$15 = 2049
$ print PATH_MAX
$16 = 2048
---
 setup.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Show changes to setup.c +1 −1
diff --git a/setup.c b/setup.c
index dda67d2..a45ea83 100644
--- a/setup.c
+++ b/setup.c
@@ -216,7 +216,7 @@ const char *setup_git_directory_gently(int *nongit_ok)
 		die("Not a git repository: '%s'", gitdirenv);
 	}
 
-	if (!getcwd(cwd, sizeof(cwd)) || cwd[0] != '/')
+	if (!getcwd(cwd, sizeof(cwd)-1) || cwd[0] != '/')
 		die("Unable to read current working directory");
 
 	offset = len = strlen(cwd);
-- 
1.5.0.3

← back to recent threads