From: Nguyen Thai Ngoc Duy Date: Tue, 11 Aug 2009 01:38:03 GMT Subject: Re: [RFC PATCH v2 4/4] read-tree: add --no-sparse to turn off sparse hook Message-ID: In-Reply-To: 2009/8/10 Johannes Schindelin : > Hi, > > On Mon, 10 Aug 2009, Nguyễn Thái Ngọc Duy wrote: > >> diff --git a/unpack-trees.c b/unpack-trees.c >> index f407bf5..d087112 100644 >> --- a/unpack-trees.c >> +++ b/unpack-trees.c >> @@ -530,8 +530,10 @@ int unpack_trees(unsigned len, struct tree_desc *t, struct unpack_trees_options >>       if (o->trivial_merges_only && o->nontrivial_merge) >>               return unpack_failed(o, "Merge requires file-level merging"); >> >> -     if (run_sparse_hook(o)) >> -             return unpack_failed(o, NULL); >> +     if (!o->no_sparse_hook) { >> +             if (run_sparse_hook(o)) >> +                     return unpack_failed(o, NULL); >> +     } >> > > IMHO this would read nicelier as > >        if (!o->no_sparse_hook && run_sparse_hook(o)) >                return unpack_failed(o, NULL); Right. >> diff --git a/unpack-trees.h b/unpack-trees.h >> index ad21823..81eb2ef 100644 >> --- a/unpack-trees.h >> +++ b/unpack-trees.h >> @@ -30,6 +30,7 @@ struct unpack_trees_options { >>                    skip_unmerged, >>                    initial_checkout, >>                    diff_index_cached, >> +                  no_sparse_hook, >>                    gently; > > Hmm.  I understand that the assumption is that memset(&opts, 0, > sizeof(opts)); should give you a sensible default, but I cannot avoid > noticing that "no_sparse_hook = 0" is a double negation, something to be > avoided... skip_sparse_hook then? :-) -- Duy