From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS3215 2.6.0.0/16 X-Spam-Status: No, score=-3.1 required=3.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from out1.vger.email (out1.vger.email [IPv6:2620:137:e000::1:20]) by dcvr.yhbt.net (Postfix) with ESMTP id D4ED21F670 for ; Wed, 9 Mar 2022 13:25:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232918AbiCIN0n (ORCPT ); Wed, 9 Mar 2022 08:26:43 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37770 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232361AbiCIN0m (ORCPT ); Wed, 9 Mar 2022 08:26:42 -0500 Received: from mail-ed1-x52c.google.com (mail-ed1-x52c.google.com [IPv6:2a00:1450:4864:20::52c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C8716151C6A for ; Wed, 9 Mar 2022 05:25:43 -0800 (PST) Received: by mail-ed1-x52c.google.com with SMTP id y12so2812056edt.9 for ; Wed, 09 Mar 2022 05:25:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:references:user-agent:in-reply-to :message-id:mime-version; bh=nnHZRDbcFkjejEnPnhmTyaqZy/j/gIEQ+RdrOMoLt1c=; b=EvQBkDE8UAnYvTXA20x3RipE2OYvnKQYhNHwlMSeavxXrY7VaS6IAjmr14YaWdeKTB 5lLh2TQ7gxy6BEgHV6gSsukJIxcDKkENQdFyTaNaofoKOHrwyPNU+wON7mHZ+dabxAWc 8jkbC2vr0+DgHmS0dM/eq+qIXOuf1eprCz+wZuQApPqvBufh8bQ5RDoW62H89Ue76R6w L3UfETwvgTyi4oNnz4IXlk3bC5ULz5cah+n9HcJFR4piWY3FztbQYLtvS5FMCvPnWebT 2G1wrGLl9nyL2H7LBKO+QwTXZiBMjiBZ6edquslAIUzUGxHVuClE3HJ9sziCWPlq5INv CFNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:references:user-agent :in-reply-to:message-id:mime-version; bh=nnHZRDbcFkjejEnPnhmTyaqZy/j/gIEQ+RdrOMoLt1c=; b=Pm8ODPFaO0ZIHWIxXGB4IP3TshleenAc9VZEJxBeShhE0MZAguVgYfssMyadATy/Vu hwVBdXvDw2RzjTl18Ir45M0ujjlfmWC4aPcmyU0diBIxIHyVDe5nqiTzNebM3YHSPQ7j qvbnddHnZFgJNsWNzj6jzxdT0UlvFQXusAKL/Q4bKuLOMSczIQTBL/bYSpo1i5I0kh5E F2pyR37EYbF8RfbQQ7X+hdqcdInTYwis+qOE9l+Jzcag+Te4mqJgEKdGqxE3oSMXiVWf wZGrEO0ekyIqsA6J1xWp4HSe9S7Qbtin3VOerFj2oisoMemMQj6lm0FovHUZ5m2MA1Wl z49w== X-Gm-Message-State: AOAM533ib1XtsTNe2eCUSObZXnU3IBUy2TISI0PPuhMhsenVuecTv9CF ewy5zlCVHscLgjBZR0lSuAJRckayTuh/Hg== X-Google-Smtp-Source: ABdhPJz102V8+R05NEsd7k8ISFCg5H79NVbjOxSJw4qN+kryhdJHwnQilpH62uxP15QvmRy2+OfCCA== X-Received: by 2002:a50:9505:0:b0:416:4496:5ec4 with SMTP id u5-20020a509505000000b0041644965ec4mr15513581eda.309.1646832341922; Wed, 09 Mar 2022 05:25:41 -0800 (PST) Received: from gmgdl (j120189.upc-j.chello.nl. [24.132.120.189]) by smtp.gmail.com with ESMTPSA id x18-20020a05640226d200b00416a502c147sm147676edd.10.2022.03.09.05.25.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Mar 2022 05:25:41 -0800 (PST) Received: from avar by gmgdl with local (Exim 4.95) (envelope-from ) id 1nRwJw-000AGu-Ox; Wed, 09 Mar 2022 14:25:40 +0100 From: =?utf-8?B?w4Z2YXIgQXJuZmrDtnLDsA==?= Bjarmason To: Derrick Stolee via GitGitGadget Cc: git@vger.kernel.org, stolee@gmail.com, gitster@pobox.com, zhiyou.jx@alibaba-inc.com, jonathantanmy@google.com, Jeff Hostetler , Derrick Stolee Subject: Re: [PATCH v3 05/12] list-objects: consolidate traverse_commit_list[_filtered] Date: Wed, 09 Mar 2022 14:24:13 +0100 References: User-agent: Debian GNU/Linux bookworm/sid; Emacs 27.1; mu4e 1.6.10 In-reply-to: Message-ID: <220309.86sfrrmf57.gmgdl@evledraar.gmail.com> MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org On Tue, Mar 08 2022, Derrick Stolee via GitGitGadget wrote: > From: Derrick Stolee > [...] > void traverse_commit_list_filtered( > - struct list_objects_filter_options *filter_options, > struct rev_info *revs, > show_commit_fn show_commit, > show_object_fn show_object, > @@ -444,7 +429,13 @@ void traverse_commit_list_filtered( > ctx.show_object = show_object; > ctx.show_commit = show_commit; > ctx.show_data = show_data; > - ctx.filter = list_objects_filter__init(omitted, filter_options); > + if (revs->filter) > + ctx.filter = list_objects_filter__init(omitted, revs->filter); > + else > + ctx.filter = NULL; > + Purely an optional nit, but here we could also let the initializer take care of the default NULL-ing: diff --git a/list-objects.c b/list-objects.c index 2f623f82115..52c19d54019 100644 --- a/list-objects.c +++ b/list-objects.c @@ -421,12 +421,14 @@ void traverse_commit_list(struct rev_info *revs, show_object_fn show_object, void *show_data) { - struct traversal_context ctx; - ctx.revs = revs; - ctx.show_commit = show_commit; - ctx.show_object = show_object; - ctx.show_data = show_data; - ctx.filter = NULL; + struct traversal_context ctx = { + .revs = revs, + .show_commit = show_commit, + ctx.show_object = show_object, + ctx.show_data = show_data, + }; + if (revs->filter) + ctx.filter = ...; do_traverse(&ctx); }