Skip to content

Commit

Permalink
[PATCH] git: use git_mkstemp() instead of mkstemp() for diff generation.
Browse files Browse the repository at this point in the history
This lets you run git diff in a repository otherwise read-only
to you.

Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Holger Eitzenberger authored and Junio C Hamano committed Aug 6, 2005
1 parent f2db68e commit 64f8a63
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions diff.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,11 +41,13 @@ static const char *external_diff(void)
return external_diff_cmd;
}

#define TEMPFILE_PATH_LEN 50

static struct diff_tempfile {
const char *name; /* filename external diff should read from */
char hex[41];
char mode[10];
char tmp_path[50];
char tmp_path[TEMPFILE_PATH_LEN];
} diff_temp[2];

static int count_lines(const char *filename)
Expand Down Expand Up @@ -421,8 +423,7 @@ static void prep_temp_blob(struct diff_tempfile *temp,
{
int fd;

strcpy(temp->tmp_path, ".diff_XXXXXX");
fd = mkstemp(temp->tmp_path);
fd = git_mkstemp(temp->tmp_path, TEMPFILE_PATH_LEN, ".diff_XXXXXX");
if (fd < 0)
die("unable to create temp-file");
if (write(fd, blob, size) != size)
Expand Down

0 comments on commit 64f8a63

Please sign in to comment.