From: Junio C Hamano Date: Wed, 15 Mar 2023 23:02:18 GMT Subject: Re: [PATCH 6/8] fetch: deduplicate logic to print remote URL Message-ID: In-Reply-To: <2ea3a4e308d2fb89f24d0cd2efc9d3867983a4b0.1678878623.git.ps@pks.im> Patrick Steinhardt writes: > When fetching from a remote, we not only print the actual references > that have changed, but will also print the URL from which we have > fetched them to standard output. The logic to handle this is duplicated > across two different callsites with some non-trivial logic to compute > the anonymized URL. Furthermore, we're using global state to track > whether we have already shown the URL to the user or not. If we are certain that store_updated_refs() is called only once for the entire process, then storing the preprocessed url in the display state and passing it around does sound like a good optimization and clean-up. What do we do when fetching from multiple remotes? > + display->url_len = strlen(display->url); > + for (i = display->url_len - 1; display->url[i] == '/' && 0 <= i; i--) > + ; > + display->url_len = i + 1; This loop is inherited from the original, but we may want to use strrchr() or rindex() as a post clean-up after this series settles.