Browse Source

commit: save the commit buffer off when parsing a commit

object.

A fair number of the users potentially want to look at the
commit objects more closely, and if you worry about memory
leaking in certain applications, you can always do a

	free(commit->buffer);
	commit->buffer = NULL;

by hand after parsing them.
maint
Linus Torvalds 20 years ago
parent
commit
3ff1fbbb94
  1. 4
      commit.c
  2. 1
      commit.h

4
commit.c

@ -103,6 +103,10 @@ int parse_commit(struct commit *item) @@ -103,6 +103,10 @@ int parse_commit(struct commit *item)
sha1_to_hex(item->object.sha1));
}
ret = parse_commit_buffer(item, buffer, size);
if (!ret) {
item->buffer = buffer;
return 0;
}
free(buffer);
return ret;
}

1
commit.h

@ -14,6 +14,7 @@ struct commit { @@ -14,6 +14,7 @@ struct commit {
unsigned long date;
struct commit_list *parents;
struct tree *tree;
const char *buffer;
};

extern const char *commit_type;

Loading…
Cancel
Save