summaryrefslogtreecommitdiff
path: root/commit.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2007-06-11 07:34:54 (GMT)
committerJunio C Hamano <gitster@pobox.com>2007-06-13 07:41:21 (GMT)
commit80583c0ef61cc966c7eee79cf3623a83197e19b8 (patch)
tree91afec821a568d3f96ecd3da5c2a80022dc36dda /commit.h
parent90ac368afd75c9a53c6d953a693380369a41f8db (diff)
downloadgit-80583c0ef61cc966c7eee79cf3623a83197e19b8.zip
git-80583c0ef61cc966c7eee79cf3623a83197e19b8.tar.gz
git-80583c0ef61cc966c7eee79cf3623a83197e19b8.tar.bz2
Lift 16kB limit of log message output
Traditionally we had 16kB limit when formatting log messages for output, because it was easier to arrange for the caller to have a reasonably big buffer and pass it down without ever worrying about reallocating. This changes the calling convention of pretty_print_commit() to lift this limit. Instead of the buffer and remaining length, it now takes a pointer to the pointer that points at the allocated buffer, and another pointer to the location that stores the allocated length, and reallocates the buffer as necessary. To support the user format, the error return of interpolate() needed to be changed. It used to return a bool telling "Ok the result fits", or "Sorry, I had to truncate it". Now it returns 0 on success, and returns the size of the buffer it wants in order to fit the whole result. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'commit.h')
-rw-r--r--commit.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/commit.h b/commit.h
index a313b53..467872e 100644
--- a/commit.h
+++ b/commit.h
@@ -61,7 +61,7 @@ enum cmit_fmt {
};
extern enum cmit_fmt get_commit_format(const char *arg);
-extern unsigned long pretty_print_commit(enum cmit_fmt fmt, const struct commit *, unsigned long len, char *buf, unsigned long space, int abbrev, const char *subject, const char *after_subject, enum date_mode dmode);
+extern unsigned long pretty_print_commit(enum cmit_fmt fmt, const struct commit *, unsigned long len, char **buf_p, unsigned long *space_p, int abbrev, const char *subject, const char *after_subject, enum date_mode dmode);
/** Removes the first commit from a list sorted by date, and adds all
* of its parents.