On Tue, Nov 23, 2010 at 04:35:52PM -0800, Junio C Hamano wrote: > > So let's do this, which is the equivalent behavior to your gotos, but > > this structure makes more sense to me as a reader (and it doesn't > > involve goto :) ). > > I have a feeling that we probably should have structured the code a bit > more modularly, placing some info in "rev" that tells us how to "pop" a > commit from the rev->list (typically "not the ones that we have shown"), > what other commits to push back into the queue (typically, "all the > parents that are not interesting"), and what side effects we should cause > when we do so (typically, "mark uninteresting parents"), etc., instead of > the current "if we are walking reflog, here is the special codepath we > take", so that the walking is more generalized when we did the reflog > walking (in fact, if we did this properly we probably wouldn't be calling > it "bolted on"). But for now let's refrain from doing such a rewrite. FWIW, I agree with all of that. I don't think it's worth fixing now, but perhaps in libgit2. :) -Peff -- 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