Jeff King <peff@xxxxxxxx> writes: > On Tue, Sep 13, 2011 at 05:58:25PM -0400, Jeff King wrote: > >> @@ -609,26 +610,23 @@ int finish_async(struct async *async) >> int run_hook(const char *index_file, const char *name, ...) >> { >> struct child_process hook; >> - const char **argv = NULL, *env[2]; >> + struct argv_array argv = ARGV_ARRAY_INIT; > > I find this diff function header pretty confusing. Of course we're not > in finish_async, as you can see by the fact that the context contains > the start of run_hook. > > I don't think this is something that can be solved with xfuncname > config; we would have to teach xdiff to look at context lines when > picking a header line. > > Am I the only one who finds this confusing? Can anyone think of a reason > to keep showing finish_async in this example? Would this be sufficient? Instead of looking for the first line that matches the "beginning" pattern going backwards starting from one line before the displayed context, we start our examination at the first line shown in the context. xdiff/xemit.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/xdiff/xemit.c b/xdiff/xemit.c index 277e2ee..5f9c0e0 100644 --- a/xdiff/xemit.c +++ b/xdiff/xemit.c @@ -131,7 +131,7 @@ int xdl_emit_diff(xdfenv_t *xe, xdchange_t *xscr, xdemitcb_t *ecb, if (xecfg->flags & XDL_EMIT_FUNCNAMES) { long l; - for (l = s1 - 1; l >= 0 && l > funclineprev; l--) { + for (l = s1; l >= 0 && l > funclineprev; l--) { const char *rec; long reclen = xdl_get_rec(&xe->xdf1, l, &rec); long newfunclen = ff(rec, reclen, funcbuf, -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html