Bo Yang wrote:
quoted hunk ↗ jump to hunk
diff --git a/diff.c b/diff.c
index 9bd9063..4a10d16 100644
--- a/diff.c
+++ b/diff.c
@@ -487,6 +487,13 @@ static void emit_rewrite_diff(const char *name_a,
char *data_one, *data_two;
size_t size_one, size_two;
struct emit_callback ecbdata;
+ char *line_prefix = "";
+ struct strbuf *msgbuf;
+
+ if (o && o->output_prefix) {
+ msgbuf = o->output_prefix(o->file, 0, o->output_prefix_data);
+ line_prefix = msgbuf->buf;
+ }
Umm. This snippet of code means that the callback can't to much
except return or print a string depending on the value of the second
argument, doesn't it?
So why not either make it explicit and just put a char* field there,
or make a more generic callback that replaces write() (or so) and
gets a chance to mangle the output in any way it likes?
--
Thomas Rast
trast@{inf,student}.ethz.ch