Commit 2f512ff81e1705c0246416f2292b53540f88fd19

Carlos Martín Nieto 2011-08-05T18:11:30

Use strcpy+strcat as memcpy was overlapping Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
diff --git a/src/transport_git.c b/src/transport_git.c
index 4a10f17..5f03a4b 100644
--- a/src/transport_git.c
+++ b/src/transport_git.c
@@ -346,9 +346,10 @@ static int store_pack(char **out, gitno_buffer *buf, git_repository *repo)
 	char path[GIT_PATH_MAX], suff[] = "/objects/pack/pack-received\0";
 	off_t off = 0;
 
-	memcpy(path, repo->path_repository, GIT_PATH_MAX - off);
+	strcpy(path, repo->path_repository);
 	off += strlen(repo->path_repository);
-	memcpy(path + off, suff, GIT_PATH_MAX - off - STRLEN(suff));
+	strcat(path, suff);
+	//memcpy(path + off, suff, GIT_PATH_MAX - off - STRLEN(suff) - 1);
 
 	error = git_filebuf_open(&file, path, GIT_FILEBUF_TEMPORARY);
 	if (error < GIT_SUCCESS)