From patchwork Tue Mar 28 13:58:42 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191106 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3A58DC6FD18 for ; Tue, 28 Mar 2023 13:59:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232858AbjC1N7Q (ORCPT ); Tue, 28 Mar 2023 09:59:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38668 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232659AbjC1N7O (ORCPT ); Tue, 28 Mar 2023 09:59:14 -0400 Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5124510E2 for ; Tue, 28 Mar 2023 06:59:12 -0700 (PDT) Received: by mail-wm1-x335.google.com with SMTP id q7-20020a05600c46c700b003ef6e809574so4239626wmo.4 for ; Tue, 28 Mar 2023 06:59:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011950; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PI4Osjd+uHtRJh64rwyVOhjIAebtdHpt8zujQ6ro5Zk=; b=pH0ben2EBNllK8w3zbXeApPOn2SmfAM/0ZzyvPbHYsmNHFRHTccSbZEucJ3ZEutJs0 PPv7s+6gs7auujV1+09LZDHebHf73CmWdVnNqAUKeeoi0hgyKeVRVaQ58ieAR/qL/Mv/ iCZHxfznq5EmM/UQ7gmenX1/s+LU/qpyF8QyXsKFUc/ED3w0ZMwB/xVeWED21pBOk1mS 9YY4rlGEAUi2t3QvfJrypMcKYdTpIC3NmYcz/BHpEbBgfZx7JDpyhkLH3QQVQIQDR4jA YY32AyFssmUanyMrXn7hnxfG01TjagZLNTigNRFqglpsK3XaypV+tDSrezD4Cto44PAl qBGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011950; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PI4Osjd+uHtRJh64rwyVOhjIAebtdHpt8zujQ6ro5Zk=; b=4CeiQK0Bq0pho3ZZV7oqd5GKG2f22/IOs5YfIKKHpbtyLS/iD/kZnLXPupjCU5z/XO mYe5pcvsVGhXTq2bOfFqwZz44rKxreAn69f7095rtNEi625E6/M5EkHfXwuv3J/4VjoP jxBE67EDuU0rlEVGNbR5//ySIxTDSvWEfjOnkNjZiYgsyimKUk97r2PMskrrCUXsar5P 9o9kB7YAsp6vsBkLfBQaXH/Q3G7yzjk0fplg3FvxiVAjfw08RRJQr/X0LYJVgptxRLq/ urEKhHvQP3mPuHAekonK6peXdNUxCloM6CkKVPODy0XlhCT4A1+rhHeRvKL+mzVUnpVL hWUQ== X-Gm-Message-State: AO0yUKXC8Q/rEIvIw5W0C5VxKajqIPYsBLcoN31zCEJ3E5woZuU9bqSo iMcY4omFQKLz/ZZchjUj3iYjaJzzh4OM6g== X-Google-Smtp-Source: AK7set/lCgePszbeEbcM6JlqIcM08SLF21clFQ/J33Bfqp2v97+mXfQds9FnJYJHYPxXTk9tI4ClMg== X-Received: by 2002:a1c:7406:0:b0:3ee:18e:a1ef with SMTP id p6-20020a1c7406000000b003ee018ea1efmr11869554wmc.1.1680011950522; Tue, 28 Mar 2023 06:59:10 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:10 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 01/17] cocci: remove dead rule from "the_repository.pending.cocci" Date: Tue, 28 Mar 2023 15:58:42 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org The "parse_commit_gently" macro went away in [1], so we don't need to carry this for its migration. 1. ea3f7e598c8 (revision: use repository from rev_info when parsing commits, 2020-06-23) Signed-off-by: Ævar Arnfjörð Bjarmason --- contrib/coccinelle/the_repository.pending.cocci | 8 -------- 1 file changed, 8 deletions(-) diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 747d382ff5f..23b97536da5 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -34,14 +34,6 @@ expression G; + repo_parse_commit_internal(the_repository, E, F, G) -@@ -expression E; -expression F; -@@ -- parse_commit_gently( -+ repo_parse_commit_gently(the_repository, - E, F) - @@ expression E; @@ From patchwork Tue Mar 28 13:58:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191108 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8C344C76196 for ; Tue, 28 Mar 2023 13:59:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232896AbjC1N7T (ORCPT ); Tue, 28 Mar 2023 09:59:19 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38668 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230423AbjC1N7O (ORCPT ); Tue, 28 Mar 2023 09:59:14 -0400 Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [IPv6:2a00:1450:4864:20::336]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 90FE213A for ; Tue, 28 Mar 2023 06:59:13 -0700 (PDT) Received: by mail-wm1-x336.google.com with SMTP id bg16-20020a05600c3c9000b003eb34e21bdfso9516809wmb.0 for ; Tue, 28 Mar 2023 06:59:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011951; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=M2iaTobd7U8jGdUfdw9d8q88d3tJJxq8Qsw72DV/zfQ=; b=KxtU5ilh4t9wFwJFud1o2DwW+vbDFTH/bl8j+u7BoVHdfJM+Ez5CeudWWhIh+yLLhM KI0aw6lxthM/bKE9YwoHWcnX3zeyxJOMLaaz5+bT7C6y1p8P8VpHY8tlq6kF/2ikxRTo iZwUFjk3dBuRvEZemhkzvT1zhNQGaX22rLlxcpjlm2PKXnziy8TTRwajs7VLBy7Ie72K ZlylgNT/o7dGeanM/BzSY4G9EcbCVLRRub3WQ35o+yg7+mDyfEczeVo/EBcXP0EJmDLJ +sXU3D5CZQsClFgm2Qy8Kyzqo0RhUppzZvPk7yVctRNIwxNnE8UxEDdzOVpMyz76Gplx Hi6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011951; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=M2iaTobd7U8jGdUfdw9d8q88d3tJJxq8Qsw72DV/zfQ=; b=OwhGsLMYDgWm5LpMggDXhBBnKzDnum6Ie0id405bcKz0ZxiPlLf50OhArjFKlH6g+f DbYyUDXYIGEIZxtc/q6mIQmU5aGATDaTWAyrNSDqTNxFzhy2bEIeimA44xkDZNWVGVTj dAlOS/UfamRGaJ6I/LqkCDHvbkKt8IA9sCySqhi+FF7kaF65m68mUPGk2qGBJHSwlMTh gkuJReTvi5LjDxvM9iseQCEC7ihAfVtptu7CSFEgBpZm6vLd9EvqCDHCsHPpeOgSBGiM XsK1Z3xvP8qnzOcOdKG/9bjKAwU+Zgv7Wu22vsy+P4UjyolZ5bwoZ8K9vw/erwzinprP /MPQ== X-Gm-Message-State: AO0yUKUZbwdoFiaMBoyADDhlF2ikFpk9oQE2XheHbo3Tn9/Ke1dYW4P+ THJFENPxRAZgUJD7+vDCt/Hd7G7T52lgaQ== X-Google-Smtp-Source: AK7set9yaquT9izF38Rp298Fm19rkiq8/YDXT8RRtD4toFMKagcr3ZHckICS/ReGoARbSEnrQYpWOA== X-Received: by 2002:a7b:cbd2:0:b0:3ee:3e07:5d26 with SMTP id n18-20020a7bcbd2000000b003ee3e075d26mr12226232wmi.24.1680011951561; Tue, 28 Mar 2023 06:59:11 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:11 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 02/17] cocci: fix incorrect & verbose "the_repository" rules Date: Tue, 28 Mar 2023 15:58:43 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org When these rules started being added in [1] they didn't use a ";" after the ")", and would thus catch uses of these macros within expressions. But as of [2] the new additions were broken in that they'd only match a subset of the users of these macros. Rather than narrowly fixing that, let's have these use the much less verbose pattern introduced in my recent [3]: There's no need to exhaustively enumerate arguments if we use the "..." syntax. This means that we can fold all of these different rules into one. 1. afd69dcc219 (object-store: prepare read_object_file to deal with any repo, 2018-11-13) 2. 21a9651ba3f (commit-reach: prepare get_merge_bases to handle any repo, 2018-11-13) 3. 0e6550a2c63 (cocci: add a index-compatibility.pending.cocci, 2022-11-19) Signed-off-by: Ævar Arnfjörð Bjarmason --- .../coccinelle/the_repository.pending.cocci | 160 +++++------------- 1 file changed, 46 insertions(+), 114 deletions(-) diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 23b97536da5..99e192736ee 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -3,118 +3,50 @@ // our code base. @@ -expression E; -expression F; -expression G; @@ -- read_object_file( -+ repo_read_object_file(the_repository, - E, F, G) - -@@ -expression E; -@@ -- has_object_file( -+ repo_has_object_file(the_repository, - E) - -@@ -expression E; -@@ -- has_object_file_with_flags( -+ repo_has_object_file_with_flags(the_repository, - E) - -@@ -expression E; -expression F; -expression G; -@@ -- parse_commit_internal( -+ repo_parse_commit_internal(the_repository, - E, F, G) - -@@ -expression E; -@@ -- parse_commit( -+ repo_parse_commit(the_repository, - E) - -@@ -expression E; -expression F; -@@ -- get_merge_bases( -+ repo_get_merge_bases(the_repository, - E, F); - -@@ -expression E; -expression F; -expression G; -@@ -- get_merge_bases_many( -+ repo_get_merge_bases_many(the_repository, - E, F, G); - -@@ -expression E; -expression F; -expression G; -@@ -- get_merge_bases_many_dirty( -+ repo_get_merge_bases_many_dirty(the_repository, - E, F, G); - -@@ -expression E; -expression F; -@@ -- in_merge_bases( -+ repo_in_merge_bases(the_repository, - E, F); - -@@ -expression E; -expression F; -expression G; -@@ -- in_merge_bases_many( -+ repo_in_merge_bases_many(the_repository, - E, F, G); - -@@ -expression E; -expression F; -@@ -- get_commit_buffer( -+ repo_get_commit_buffer(the_repository, - E, F); - -@@ -expression E; -expression F; -@@ -- unuse_commit_buffer( -+ repo_unuse_commit_buffer(the_repository, - E, F); - -@@ -expression E; -expression F; -expression G; -@@ -- logmsg_reencode( -+ repo_logmsg_reencode(the_repository, - E, F, G); - -@@ -expression E; -expression F; -expression G; -expression H; -@@ -- format_commit_message( -+ repo_format_commit_message(the_repository, - E, F, G, H); +( +- read_object_file ++ repo_read_object_file +| +- has_object_file ++ repo_has_object_file +| +- has_object_file_with_flags ++ repo_has_object_file_with_flags +| +- parse_commit_internal ++ repo_parse_commit_internal +| +- parse_commit ++ repo_parse_commit +| +- get_merge_bases ++ repo_get_merge_bases +| +- get_merge_bases_many ++ repo_get_merge_bases_many +| +- get_merge_bases_many_dirty ++ repo_get_merge_bases_many_dirty +| +- in_merge_bases ++ repo_in_merge_bases +| +- in_merge_bases_many ++ repo_in_merge_bases_many +| +- get_commit_buffer ++ repo_get_commit_buffer +| +- unuse_commit_buffer ++ repo_unuse_commit_buffer +| +- logmsg_reencode ++ repo_logmsg_reencode +| +- format_commit_message ++ repo_format_commit_message +) + ( ++ the_repository, + ...) From patchwork Tue Mar 28 13:58:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191109 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 76594C6FD18 for ; Tue, 28 Mar 2023 13:59:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232915AbjC1N7V (ORCPT ); Tue, 28 Mar 2023 09:59:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38698 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232720AbjC1N7O (ORCPT ); Tue, 28 Mar 2023 09:59:14 -0400 Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [IPv6:2a00:1450:4864:20::331]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E915710E0 for ; Tue, 28 Mar 2023 06:59:13 -0700 (PDT) Received: by mail-wm1-x331.google.com with SMTP id o32so7013950wms.1 for ; Tue, 28 Mar 2023 06:59:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011952; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=XTg9l3pkjLM+aNV5Yt3feJA1wIzjFB8xX+MVcbsEomc=; b=QDxtRBJYboPtJp8hHonw9XSi3FZ0CzzNRPE6R9JffdrkT7+6UQUVwIZ5tOzp7tBOh+ ywezS8chbCCfzJj1wzryN/ynlooHneF7QY4qSuBkvIF08LgIavh2kw/K6oZo5ZEoXom2 ghfzSvMh7N4cobOzhdqZSlBMYNbFnk4Z2Qn7EuDfm5n9UWPV3/Nams4f2B/FGMVWRgQM HSs40dwEyFIm5sSotsODBFeoHn4YXmf9v3nEtmR9vtHrfBsy+gp4cUDiKWf81qaSqVMH rwfWdOAsDVJd7QJOS5Y3B4uROUoCQDbF549g00IOJspxRoy82hY4kiuDMIJ6KHJZUTxY seGg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011952; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XTg9l3pkjLM+aNV5Yt3feJA1wIzjFB8xX+MVcbsEomc=; b=IH4TuB3HzfUV90d3dGx4FaaMmC+s2WIdgv2VE0p8HGWWKlC3hgfoRaSGHKKSiyhXys qfJA6OkPc1k6S14s6hOG3MEaAq373fYHyS2w1SMmwc3VjeLo8+1LCIl/KBkFqEZfcjhg bV8hp7UdOhg5w9y+TJqPsMJOiGHwB5QxXlq09J1qqvO3vbq4mfVFo89wDfac4Rslv9In XKoquOfpbCmkQgrk8lQQzBZrnq5bBW9q39kxkJLl4d3pBAjTYpz9a6HhuzkPogYpn2NF Z/EPipiXYoL96IT/GEHJ5cKq7OxQHaOY8G3nXtOLS1VoMPxSz9t1g9Z7+3OP2SPhOBjL hqQA== X-Gm-Message-State: AO0yUKWauxkt4FB76P63SPQrvFzegMBDjm68jD0IAeLaC7tYAd72tNr6 5dWWJxgxPjmAPzCbePjQ99Ro1qC9e0la1g== X-Google-Smtp-Source: AK7set93fSMItUJtJjpMWuuySIHpQDNWPaQB1aSUQT/l263Kjji/fSok0jFxR244jQNrCXntT/ROvQ== X-Received: by 2002:a7b:ce08:0:b0:3ee:da1:135f with SMTP id m8-20020a7bce08000000b003ee0da1135fmr12435387wmc.7.1680011952092; Tue, 28 Mar 2023 06:59:12 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:11 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 03/17] cocci: sort "the_repository" rules by header Date: Tue, 28 Mar 2023 15:58:44 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Sort the "the_repository.pending.cocci" file by which header the macros are in, and add a comment to that effect in front of the rules. This will make subsequent commits easier to follow, as we'll be applying these rules on a header-by-header basis. Once we've fully applied "the_repository.pending.cocci" we'll keep this rules around for a while in "the_repository.cocci", to help any outstanding topics and out-of-tree code to resolve textual or semantic conflicts with these changes, but eventually we'll remove the "the_repository.cocci" as a follow-up. So even if some of these functions are subsequently moved and/or split into other or new headers there's no risk of this becoming stale, if and when that happens the we should be removing these rules anyway. Signed-off-by: Ævar Arnfjörð Bjarmason --- .../coccinelle/the_repository.pending.cocci | 34 +++++++++++-------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 99e192736ee..84b79dce480 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,21 +5,7 @@ @@ @@ ( -- read_object_file -+ repo_read_object_file -| -- has_object_file -+ repo_has_object_file -| -- has_object_file_with_flags -+ repo_has_object_file_with_flags -| -- parse_commit_internal -+ repo_parse_commit_internal -| -- parse_commit -+ repo_parse_commit -| +// commit-reach.h - get_merge_bases + repo_get_merge_bases | @@ -34,6 +20,13 @@ | - in_merge_bases_many + repo_in_merge_bases_many +// commit.h +| +- parse_commit_internal ++ repo_parse_commit_internal +| +- parse_commit ++ repo_parse_commit | - get_commit_buffer + repo_get_commit_buffer @@ -43,6 +36,17 @@ | - logmsg_reencode + repo_logmsg_reencode +// object-store.h +| +- read_object_file ++ repo_read_object_file +| +- has_object_file ++ repo_has_object_file +| +- has_object_file_with_flags ++ repo_has_object_file_with_flags +// pretty.h | - format_commit_message + repo_format_commit_message From patchwork Tue Mar 28 13:58:45 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191110 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 103BFC76196 for ; Tue, 28 Mar 2023 13:59:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232889AbjC1N7Z (ORCPT ); Tue, 28 Mar 2023 09:59:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38698 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232874AbjC1N7Q (ORCPT ); Tue, 28 Mar 2023 09:59:16 -0400 Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [IPv6:2a00:1450:4864:20::336]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CBE7113E for ; Tue, 28 Mar 2023 06:59:14 -0700 (PDT) Received: by mail-wm1-x336.google.com with SMTP id n10-20020a05600c4f8a00b003ee93d2c914so9154183wmq.2 for ; Tue, 28 Mar 2023 06:59:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011953; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HzNsp2akuohY/H7dKVAAe652mqxsnmH9o7l3NfkZFdE=; b=EGVtQfSiVewwUisW79sct9s1E72bSJa8mrP+H/myjetJ5lfBFG5KvFRuHD6lE/FZDb sEQJF3zbwOnP5YkNZwmpd2wfOP44lP89BXBGQKQ+HtM0x768z6Yim9eH3+B9M30LON6V GCVoiywwFr5xjZPToVWMYN1Pa+Rh9tqCCzfXyntvv6c1jdKU9pbBYbwzUCxivruEacD8 f1bUVo63ZUO30Fuz5nwfvZqyV9E9/YUPrOCPyE6W8vmCjfLX759Pp2QCHyxTDdF94BC3 jQIc1jLIjswEfvHJY+vdKqPQPSfZhJ8M1Jsl81NILUCQkMY+WRrW7Pko67bCwWST3wob QCPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011953; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HzNsp2akuohY/H7dKVAAe652mqxsnmH9o7l3NfkZFdE=; b=RDOVDAmKeEo9uHAhX4GRN5zXq7gWH0WMCdxnQv+6ahsTdzxk140nR31AuMIk5hK/6L W1uVc46Xmm/oklerc/pc4xlH31hCi8BXgsttJBEt+DIQvNAMM8pUZ9GFMBfA1HVxnit2 EP0eEHZooEF6Gn22TmUBYlrPwGsgGpYczHEu2a/rTXM9TmpGXi6o8HkqEEkajVSIxXFX kDI/VeI5wz20Cfj0R8WLioFFohfLvETWH/RZv//1YCeNEG+agmlmkhkV7latF6p8Oqkk E50x3opz6tUUv6ObpHjVIAWdRVg2hrmF7j5I0Id4YJo1+2FqSEBvIk+m9p7oQ3HKwTGd 62vQ== X-Gm-Message-State: AO0yUKWoFr6zJlT0obLsIxYB6SasNYvbIs6ZtDdnH7K2fNzVGaB8HAOJ G6HfImpwsK2yahffdp1jL+Ainf/MLMVs0g== X-Google-Smtp-Source: AK7set/Y0v8/NGgW+geeuZFRqdtrTfWdsYZKwQf/Kay489NHjxbZil9kuk44Fhnv4VvxDFIatNcXeg== X-Received: by 2002:a7b:cb93:0:b0:3ee:814b:9c39 with SMTP id m19-20020a7bcb93000000b003ee814b9c39mr11954593wmi.18.1680011953085; Tue, 28 Mar 2023 06:59:13 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:12 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 04/17] cocci: add missing "the_repository" macros to "pending" Date: Tue, 28 Mar 2023 15:58:45 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org In the case of diff.h, rerere.h and revision.h the macros were added in [1], [2] and [3] when "the_repository.pending.cocci" didn't exist. None of the subsequently added migration rules covered them. Let's add those missing rules. In the case of macros in "cache.h", "commit.h", "packfile.h", "promisor-remote.h" and "refs.h" those aren't guarded by "NO_THE_REPOSITORY_COMPATIBILITY_MACROS", but they're also macros that add "the_repository" as the first argument, so we should migrate away from them. 1. 2abf3503854 (revision.c: remove implicit dependency on the_index, 2018-09-21) 2. e6757652350 (diff.c: remove implicit dependency on the_index, 2018-09-21) 3. 35843b1123e (rerere.c: remove implicit dependency on the_index, 2018-09-21) Signed-off-by: Ævar Arnfjörð Bjarmason --- .../coccinelle/the_repository.pending.cocci | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 84b79dce480..8b3f2580e6b 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,7 +5,44 @@ @@ @@ ( +// cache.h +- get_oid ++ repo_get_oid +| +- get_oid_commit ++ repo_get_oid_commit +| +- get_oid_committish ++ repo_get_oid_committish +| +- get_oid_tree ++ repo_get_oid_tree +| +- get_oid_treeish ++ repo_get_oid_treeish +| +- get_oid_blob ++ repo_get_oid_blob +| +- get_oid_mb ++ repo_get_oid_mb +| +- find_unique_abbrev ++ repo_find_unique_abbrev +| +- find_unique_abbrev_r ++ repo_find_unique_abbrev_r +| +- for_each_abbrev ++ repo_for_each_abbrev +| +- interpret_branch_name ++ repo_interpret_branch_name +| +- peel_to_type ++ repo_peel_to_type // commit-reach.h +| - get_merge_bases + repo_get_merge_bases | @@ -36,6 +73,13 @@ | - logmsg_reencode + repo_logmsg_reencode +| +- get_commit_tree ++ repo_get_commit_tree +// diff.h +| +- diff_setup ++ repo_diff_setup // object-store.h | - read_object_file @@ -50,6 +94,32 @@ | - format_commit_message + repo_format_commit_message +// packfile.h +| +- approximate_object_count ++ repo_approximate_object_count +// promisor-remote.h +| +- promisor_remote_reinit ++ repo_promisor_remote_reinit +| +- promisor_remote_find ++ repo_promisor_remote_find +| +- has_promisor_remote ++ repo_has_promisor_remote +// refs.h +| +- dwim_ref ++ repo_dwim_ref +// rerere.h +| +- rerere ++ repo_rerere +// revision.h +| +- init_revisions ++ repo_init_revisions ) ( + the_repository, From patchwork Tue Mar 28 13:58:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191113 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8C383C6FD18 for ; Tue, 28 Mar 2023 13:59:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232500AbjC1N7g (ORCPT ); Tue, 28 Mar 2023 09:59:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38882 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232874AbjC1N71 (ORCPT ); Tue, 28 Mar 2023 09:59:27 -0400 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [IPv6:2a00:1450:4864:20::32a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 13E3413A for ; Tue, 28 Mar 2023 06:59:17 -0700 (PDT) Received: by mail-wm1-x32a.google.com with SMTP id u1so6995241wmn.5 for ; Tue, 28 Mar 2023 06:59:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011955; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=u/E4mJhSaRKZKY3C8z44DLKQBaQwDQrzWpG8wH7god0=; b=XMNn7gpH87jTgaofhWu23eTrZmeY07s+mu+SoSittPot05s1m+wkgcGSJudXHPVr5r dEogFoypwrb2gE0uKj53I3OLtEJrWFAAZLjzlFuLC+kC+kFya/Sv/HvMoJZEHjv4m1bC 1S/3RFHEXC0L+gX1p8wstU29Iy7wfjgv6Pfp9gE36Pq/Mi53QX9HGg0x+Ijc8j2RsLji rgckCDvGtnrQEgGtUbZfHxNCq4BLBm1A0Colg4JOTZHWvRwdV9hFIhbcSYw+eNI8h8hI 2oHZlLbgyC6jMBiL+1v3Cp5G2/RP8/znedNVh5N3rxR0mmsOuNolkhSjG4TRbpNtmvAr YUzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011955; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=u/E4mJhSaRKZKY3C8z44DLKQBaQwDQrzWpG8wH7god0=; b=lKbY7PNmt+lAfz9EjjB+Xlr9OFX7gs7b0hSqnDLJ9FKsOxvlQ5YyoaLfW8u8ZiUAUF HGMZ2jPbcCxUNv0/0bMtafrcIKpXVQVun344KGsg+Dc40gDp8eHQm4g7yBhQzsM6Ao/a fzHJt7Cpv851LgrAVg43dcsVZqGBCuxPjDinLF3Y3PUsTXnCf3d0sOTSAlgiKbC+Rp7N KiT+nA/7/3hIlhF5bay9Snrvv44v4kJQ0rdFOg2r5L3NmHZcWmAQrGTliuUqyV0QuT5w tP7CuiUamMlJsYEqliZ3eO8ec3LqLp+lgXOGgq/qEn54qrFh6yjvHFQJHS4voIDfPqRs Vdew== X-Gm-Message-State: AO0yUKWn8TFWFKe/zG8HlceXR7umLgIz/OVlj5ppDDUSI5rd7Gqp4zUA juPeA8ZSX4y2A3fJDcJ7tD/mUf7i+dDi0g== X-Google-Smtp-Source: AK7set9hnOsoXWYA7JLWCyjcORjvWDAlAhUY3SBzfUTYD3qw8d66qsQ1OXlJLEbgwfESs/alhIus4g== X-Received: by 2002:a7b:c4cb:0:b0:3ed:253c:621b with SMTP id g11-20020a7bc4cb000000b003ed253c621bmr14265357wmk.21.1680011953922; Tue, 28 Mar 2023 06:59:13 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:13 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 05/17] cocci: apply the "cache.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:46 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "cache.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- add-patch.c | 2 +- apply.c | 4 +- archive.c | 2 +- branch.c | 2 +- builtin/am.c | 16 +++--- builtin/bisect.c | 19 +++---- builtin/blame.c | 9 ++-- builtin/branch.c | 2 +- builtin/checkout.c | 16 +++--- builtin/commit-tree.c | 4 +- builtin/commit.c | 8 +-- builtin/describe.c | 5 +- builtin/fast-import.c | 8 +-- builtin/fetch.c | 2 +- builtin/fsck.c | 2 +- builtin/log.c | 8 +-- builtin/ls-files.c | 4 +- builtin/ls-tree.c | 9 ++-- builtin/merge-base.c | 4 +- builtin/merge-recursive.c | 6 +-- builtin/merge.c | 10 ++-- builtin/name-rev.c | 7 +-- builtin/notes.c | 22 ++++---- builtin/prune.c | 2 +- builtin/pull.c | 4 +- builtin/range-diff.c | 12 ++--- builtin/read-tree.c | 2 +- builtin/rebase.c | 12 +++-- builtin/receive-pack.c | 10 ++-- builtin/replace.c | 16 +++--- builtin/reset.c | 19 +++---- builtin/rev-list.c | 2 +- builtin/rev-parse.c | 12 +++-- builtin/rm.c | 2 +- builtin/show-branch.c | 12 ++--- builtin/show-ref.c | 4 +- builtin/sparse-checkout.c | 2 +- builtin/stash.c | 13 ++--- builtin/submodule--helper.c | 4 +- builtin/tag.c | 6 +-- builtin/unpack-file.c | 2 +- builtin/update-ref.c | 8 +-- builtin/verify-commit.c | 2 +- builtin/verify-tag.c | 2 +- builtin/worktree.c | 8 +-- cache.h | 15 ------ checkout.c | 2 +- combine-diff.c | 6 +-- commit.c | 10 ++-- contrib/coccinelle/the_repository.cocci | 44 ++++++++++++++++ .../coccinelle/the_repository.pending.cocci | 37 -------------- diff-lib.c | 2 +- diff.c | 4 +- fmt-merge-msg.c | 4 +- log-tree.c | 15 +++--- mailmap.c | 2 +- notes-merge.c | 2 +- notes.c | 6 +-- object-name.c | 5 +- parse-options-cb.c | 8 +-- range-diff.c | 8 +-- read-cache.c | 2 +- rebase-interactive.c | 2 +- ref-filter.c | 8 +-- remote.c | 6 +-- reset.c | 4 +- revision.c | 11 ++-- sequencer.c | 51 ++++++++++--------- submodule-config.c | 2 +- submodule.c | 8 +-- t/helper/test-fast-rebase.c | 10 ++-- t/helper/test-match-trees.c | 4 +- t/helper/test-oidmap.c | 6 +-- t/helper/test-reach.c | 2 +- t/helper/test-submodule-config.c | 2 +- tag.c | 4 +- transport-helper.c | 2 +- transport.c | 3 +- wt-status.c | 18 +++---- 79 files changed, 332 insertions(+), 310 deletions(-) create mode 100644 contrib/coccinelle/the_repository.cocci diff --git a/add-patch.c b/add-patch.c index e6c34b9c381..6a32b49b29c 100644 --- a/add-patch.c +++ b/add-patch.c @@ -415,7 +415,7 @@ static int parse_diff(struct add_p_state *s, const struct pathspec *ps) strvec_push(&args, /* could be on an unborn branch */ !strcmp("HEAD", s->revision) && - get_oid("HEAD", &oid) ? + repo_get_oid(the_repository, "HEAD", &oid) ? empty_tree_oid_hex() : s->revision); } color_arg_index = args.nr; diff --git a/apply.c b/apply.c index 8776ab939ad..ed6abc7722f 100644 --- a/apply.c +++ b/apply.c @@ -3612,7 +3612,7 @@ static int try_threeway(struct apply_state *state, /* Preimage the patch was prepared for */ if (patch->is_new) write_object_file("", 0, OBJ_BLOB, &pre_oid); - else if (get_oid(patch->old_oid_prefix, &pre_oid) || + else if (repo_get_oid(the_repository, patch->old_oid_prefix, &pre_oid) || read_blob_object(&buf, &pre_oid, patch->old_mode)) return error(_("repository lacks the necessary blob to perform 3-way merge.")); @@ -4129,7 +4129,7 @@ static int build_fake_ancestor(struct apply_state *state, struct patch *list) else return error(_("sha1 information is lacking or " "useless for submodule %s"), name); - } else if (!get_oid_blob(patch->old_oid_prefix, &oid)) { + } else if (!repo_get_oid_blob(the_repository, patch->old_oid_prefix, &oid)) { ; /* ok */ } else if (!patch->lines_added && !patch->lines_deleted) { /* mode-only change: update the current */ diff --git a/archive.c b/archive.c index 1c2ca78e52a..cb7ca69cce1 100644 --- a/archive.c +++ b/archive.c @@ -463,7 +463,7 @@ static void parse_treeish_arg(const char **argv, dwim_ref(name, strlen(name), &oid, &ref, 0); } - if (get_oid(name, &oid)) + if (repo_get_oid(the_repository, name, &oid)) die(_("not a valid object name: %s"), name); commit = lookup_commit_reference_gently(ar_args->repo, &oid, 1); diff --git a/branch.c b/branch.c index eacef62b7c9..efea29af1ac 100644 --- a/branch.c +++ b/branch.c @@ -532,7 +532,7 @@ static void dwim_branch_start(struct repository *r, const char *start_name, explicit_tracking = 1; real_ref = NULL; - if (get_oid_mb(start_name, &oid)) { + if (repo_get_oid_mb(the_repository, start_name, &oid)) { if (explicit_tracking) { int code = die_message(_(upstream_missing), start_name); advise_if_enabled(ADVICE_SET_UPSTREAM_FAILURE, diff --git a/builtin/am.c b/builtin/am.c index 5e6b237c424..775beac2a92 100644 --- a/builtin/am.c +++ b/builtin/am.c @@ -1067,7 +1067,7 @@ static void am_setup(struct am_state *state, enum patch_format patch_format, else write_state_text(state, "applying", ""); - if (!get_oid("HEAD", &curr_head)) { + if (!repo_get_oid(the_repository, "HEAD", &curr_head)) { write_state_text(state, "abort-safety", oid_to_hex(&curr_head)); if (!state->rebasing) update_ref("am", "ORIG_HEAD", &curr_head, NULL, 0, @@ -1110,7 +1110,7 @@ static void am_next(struct am_state *state) unlink(am_path(state, "original-commit")); delete_ref(NULL, "REBASE_HEAD", NULL, REF_NO_DEREF); - if (!get_oid("HEAD", &head)) + if (!repo_get_oid(the_repository, "HEAD", &head)) write_state_text(state, "abort-safety", oid_to_hex(&head)); else write_state_text(state, "abort-safety", ""); @@ -1403,7 +1403,7 @@ static void write_index_patch(const struct am_state *state) struct rev_info rev_info; FILE *fp; - if (!get_oid("HEAD", &head)) { + if (!repo_get_oid(the_repository, "HEAD", &head)) { struct commit *commit = lookup_commit_or_die(&head, "HEAD"); tree = get_commit_tree(commit); } else @@ -1557,7 +1557,7 @@ static int fall_back_threeway(const struct am_state *state, const char *index_pa struct commit *result; char *their_tree_name; - if (get_oid("HEAD", &our_tree) < 0) + if (repo_get_oid(the_repository, "HEAD", &our_tree) < 0) oidcpy(&our_tree, the_hash_algo->empty_tree); if (build_fake_ancestor(state, index_path)) @@ -1647,7 +1647,7 @@ static void do_commit(const struct am_state *state) if (write_index_as_tree(&tree, &the_index, get_index_file(), 0, NULL)) die(_("git write-tree failed to write a tree")); - if (!get_oid_commit("HEAD", &parent)) { + if (!repo_get_oid_commit(the_repository, "HEAD", &parent)) { old_oid = &parent; commit_list_insert(lookup_commit(the_repository, &parent), &parents); @@ -2089,7 +2089,7 @@ static void am_skip(struct am_state *state) am_rerere_clear(); - if (get_oid("HEAD", &head)) + if (repo_get_oid(the_repository, "HEAD", &head)) oidcpy(&head, the_hash_algo->empty_tree); if (clean_index(&head, &head)) @@ -2131,7 +2131,7 @@ static int safe_to_abort(const struct am_state *state) oidclr(&abort_safety); strbuf_release(&sb); - if (get_oid("HEAD", &head)) + if (repo_get_oid(the_repository, "HEAD", &head)) oidclr(&head); if (oideq(&head, &abort_safety)) @@ -2164,7 +2164,7 @@ static void am_abort(struct am_state *state) if (!has_curr_head) oidcpy(&curr_head, the_hash_algo->empty_tree); - has_orig_head = !get_oid("ORIG_HEAD", &orig_head); + has_orig_head = !repo_get_oid(the_repository, "ORIG_HEAD", &orig_head); if (!has_orig_head) oidcpy(&orig_head, the_hash_algo->empty_tree); diff --git a/builtin/bisect.c b/builtin/bisect.c index c64c8d715a5..f925ceeb3c0 100644 --- a/builtin/bisect.c +++ b/builtin/bisect.c @@ -236,7 +236,7 @@ static int bisect_reset(const char *commit) } else { struct object_id oid; - if (get_oid_commit(commit, &oid)) + if (repo_get_oid_commit(the_repository, commit, &oid)) return error(_("'%s' is not a valid commit"), commit); strbuf_addstr(&branch, commit); } @@ -294,7 +294,7 @@ static int bisect_write(const char *state, const char *rev, goto finish; } - if (get_oid(rev, &oid)) { + if (repo_get_oid(the_repository, rev, &oid)) { res = error(_("couldn't get the oid of the rev '%s'"), rev); goto finish; } @@ -777,7 +777,7 @@ static enum bisect_error bisect_start(struct bisect_terms *terms, int argc, */ head = resolve_ref_unsafe("HEAD", 0, &head_oid, &flags); if (!head) - if (get_oid("HEAD", &head_oid)) + if (repo_get_oid(the_repository, "HEAD", &head_oid)) return error(_("bad HEAD - I need a HEAD")); /* @@ -803,11 +803,11 @@ static enum bisect_error bisect_start(struct bisect_terms *terms, int argc, } } else { /* Get the rev from where we start. */ - if (!get_oid(head, &head_oid) && + if (!repo_get_oid(the_repository, head, &head_oid) && !starts_with(head, "refs/heads/")) { strbuf_reset(&start_head); strbuf_addstr(&start_head, oid_to_hex(&head_oid)); - } else if (!get_oid(head, &head_oid) && + } else if (!repo_get_oid(the_repository, head, &head_oid) && skip_prefix(head, "refs/heads/", &head)) { strbuf_addstr(&start_head, head); } else { @@ -830,7 +830,7 @@ static enum bisect_error bisect_start(struct bisect_terms *terms, int argc, write_file(git_path_bisect_first_parent(), "\n"); if (no_checkout) { - if (get_oid(start_head.buf, &oid) < 0) { + if (repo_get_oid(the_repository, start_head.buf, &oid) < 0) { res = error(_("invalid ref: '%s'"), start_head.buf); goto finish; } @@ -935,11 +935,12 @@ static enum bisect_error bisect_state(struct bisect_terms *terms, int argc, if (argc == 0) { const char *head = "BISECT_HEAD"; - enum get_oid_result res_head = get_oid(head, &oid); + enum get_oid_result res_head = repo_get_oid(the_repository, + head, &oid); if (res_head == MISSING_OBJECT) { head = "HEAD"; - res_head = get_oid(head, &oid); + res_head = repo_get_oid(the_repository, head, &oid); } if (res_head) @@ -955,7 +956,7 @@ static enum bisect_error bisect_state(struct bisect_terms *terms, int argc, for (; argc; argc--, argv++) { struct commit *commit; - if (get_oid(*argv, &oid)){ + if (repo_get_oid(the_repository, *argv, &oid)){ error(_("Bad rev input: %s"), *argv); oid_array_clear(&revs); return BISECT_FAILED; diff --git a/builtin/blame.c b/builtin/blame.c index fdd9f0c0fc7..6c266019ebb 100644 --- a/builtin/blame.c +++ b/builtin/blame.c @@ -603,8 +603,9 @@ static int read_ancestry(const char *graft_file) static int update_auto_abbrev(int auto_abbrev, struct blame_origin *suspect) { - const char *uniq = find_unique_abbrev(&suspect->commit->object.oid, - auto_abbrev); + const char *uniq = repo_find_unique_abbrev(the_repository, + &suspect->commit->object.oid, + auto_abbrev); int len = strlen(uniq); if (auto_abbrev < len) return len; @@ -804,7 +805,7 @@ static int is_a_rev(const char *name) { struct object_id oid; - if (get_oid(name, &oid)) + if (repo_get_oid(the_repository, name, &oid)) return 0; return OBJ_NONE < oid_object_info(the_repository, &oid, NULL); } @@ -847,7 +848,7 @@ static void build_ignorelist(struct blame_scoreboard *sb, peel_to_commit_oid, sb); } for_each_string_list_item(i, ignore_rev_list) { - if (get_oid_committish(i->string, &oid) || + if (repo_get_oid_committish(the_repository, i->string, &oid) || peel_to_commit_oid(&oid, sb)) die(_("cannot find revision %s to ignore"), i->string); oidset_insert(&sb->ignore_list, &oid); diff --git a/builtin/branch.c b/builtin/branch.c index f63fd45edb9..968ea03c059 100644 --- a/builtin/branch.c +++ b/builtin/branch.c @@ -280,7 +280,7 @@ static int delete_branches(int argc, const char **argv, int force, int kinds, item = string_list_append(&refs_to_delete, name); item->util = xstrdup((flags & REF_ISBROKEN) ? "broken" : (flags & REF_ISSYMREF) ? target - : find_unique_abbrev(&oid, DEFAULT_ABBREV)); + : repo_find_unique_abbrev(the_repository, &oid, DEFAULT_ABBREV)); next: free(target); diff --git a/builtin/checkout.c b/builtin/checkout.c index 734d730980c..18f3fc76ced 100644 --- a/builtin/checkout.c +++ b/builtin/checkout.c @@ -433,8 +433,8 @@ static int checkout_worktree(const struct checkout_opts *opts, "Updated %d paths from %s", nr_checkouts), nr_checkouts, - find_unique_abbrev(&opts->source_tree->object.oid, - DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &opts->source_tree->object.oid, + DEFAULT_ABBREV)); else if (!nr_unmerged || nr_checkouts) fprintf_ln(stderr, Q_("Updated %d path from the index", "Updated %d paths from the index", @@ -658,10 +658,12 @@ static void describe_detached_head(const char *msg, struct commit *commit) pp_commit_easy(CMIT_FMT_ONELINE, commit, &sb); if (print_sha1_ellipsis()) { fprintf(stderr, "%s %s... %s\n", msg, - find_unique_abbrev(&commit->object.oid, DEFAULT_ABBREV), sb.buf); + repo_find_unique_abbrev(the_repository, &commit->object.oid, DEFAULT_ABBREV), + sb.buf); } else { fprintf(stderr, "%s %s %s\n", msg, - find_unique_abbrev(&commit->object.oid, DEFAULT_ABBREV), sb.buf); + repo_find_unique_abbrev(the_repository, &commit->object.oid, DEFAULT_ABBREV), + sb.buf); } strbuf_release(&sb); } @@ -1074,7 +1076,7 @@ static void suggest_reattach(struct commit *commit, struct rev_info *revs) " git branch %s\n\n", /* Give ngettext() the count */ lost), - find_unique_abbrev(&commit->object.oid, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &commit->object.oid, DEFAULT_ABBREV)); } /* @@ -1336,7 +1338,7 @@ static int parse_branchname_arg(int argc, const char **argv, if (!strcmp(arg, "-")) arg = "@{-1}"; - if (get_oid_mb(arg, rev)) { + if (repo_get_oid_mb(the_repository, arg, rev)) { /* * Either case (3) or (4), with not being * a commit, or an attempt to use case (1) with an @@ -1762,7 +1764,7 @@ static int checkout_main(int argc, const char **argv, const char *prefix, } else if (!opts->accept_ref && opts->from_treeish) { struct object_id rev; - if (get_oid_mb(opts->from_treeish, &rev)) + if (repo_get_oid_mb(the_repository, opts->from_treeish, &rev)) die(_("could not resolve %s"), opts->from_treeish); setup_new_branch_info_and_source_tree(new_branch_info, diff --git a/builtin/commit-tree.c b/builtin/commit-tree.c index e805da5bb1c..b046c193067 100644 --- a/builtin/commit-tree.c +++ b/builtin/commit-tree.c @@ -46,7 +46,7 @@ static int parse_parent_arg_callback(const struct option *opt, BUG_ON_OPT_NEG_NOARG(unset, arg); - if (get_oid_commit(arg, &oid)) + if (repo_get_oid_commit(the_repository, arg, &oid)) die(_("not a valid object name %s"), arg); assert_oid_type(&oid, OBJ_COMMIT); @@ -124,7 +124,7 @@ int cmd_commit_tree(int argc, const char **argv, const char *prefix) if (argc != 1) die(_("must give exactly one tree")); - if (get_oid_tree(argv[0], &tree_oid)) + if (repo_get_oid_tree(the_repository, argv[0], &tree_oid)) die(_("not a valid object name %s"), argv[0]); if (!buffer.len) { diff --git a/builtin/commit.c b/builtin/commit.c index f71ed41bf59..95bca976a58 100644 --- a/builtin/commit.c +++ b/builtin/commit.c @@ -557,7 +557,7 @@ static int run_status(FILE *fp, const char *index_file, const char *prefix, int s->index_file = index_file; s->fp = fp; s->nowarn = nowarn; - s->is_initial = get_oid(s->reference, &oid) ? 1 : 0; + s->is_initial = repo_get_oid(the_repository, s->reference, &oid) ? 1 : 0; if (!s->is_initial) oidcpy(&s->oid_commit, &oid); s->status_format = status_format; @@ -1000,7 +1000,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix, if (amend) parent = "HEAD^1"; - if (get_oid(parent, &oid)) { + if (repo_get_oid(the_repository, parent, &oid)) { int i, ita_nr = 0; /* TODO: audit for interaction with sparse-index. */ @@ -1567,7 +1567,7 @@ int cmd_status(int argc, const char **argv, const char *prefix) else fd = -1; - s.is_initial = get_oid(s.reference, &oid) ? 1 : 0; + s.is_initial = repo_get_oid(the_repository, s.reference, &oid) ? 1 : 0; if (!s.is_initial) oidcpy(&s.oid_commit, &oid); @@ -1710,7 +1710,7 @@ int cmd_commit(int argc, const char **argv, const char *prefix) status_format = STATUS_FORMAT_NONE; /* Ignore status.short */ s.colopts = 0; - if (get_oid("HEAD", &oid)) + if (repo_get_oid(the_repository, "HEAD", &oid)) current_head = NULL; else { current_head = lookup_commit_or_die(&oid, "HEAD"); diff --git a/builtin/describe.c b/builtin/describe.c index 5b5930f5c8c..de3743e803a 100644 --- a/builtin/describe.c +++ b/builtin/describe.c @@ -299,7 +299,8 @@ static void append_name(struct commit_name *n, struct strbuf *dst) static void append_suffix(int depth, const struct object_id *oid, struct strbuf *dst) { - strbuf_addf(dst, "-%d-g%s", depth, find_unique_abbrev(oid, abbrev)); + strbuf_addf(dst, "-%d-g%s", depth, + repo_find_unique_abbrev(the_repository, oid, abbrev)); } static void describe_commit(struct object_id *oid, struct strbuf *dst) @@ -532,7 +533,7 @@ static void describe(const char *arg, int last_one) if (debug) fprintf(stderr, _("describe %s\n"), arg); - if (get_oid(arg, &oid)) + if (repo_get_oid(the_repository, arg, &oid)) die(_("Not a valid object name %s"), arg); cmit = lookup_commit_reference_gently(the_repository, &oid, 1); diff --git a/builtin/fast-import.c b/builtin/fast-import.c index f7548ff4a35..7faedc9aa44 100644 --- a/builtin/fast-import.c +++ b/builtin/fast-import.c @@ -2487,7 +2487,7 @@ static void note_change_n(const char *p, struct branch *b, unsigned char *old_fa if (commit_oe->type != OBJ_COMMIT) die("Mark :%" PRIuMAX " not a commit", commit_mark); oidcpy(&commit_oid, &commit_oe->idx.oid); - } else if (!get_oid(p, &commit_oid)) { + } else if (!repo_get_oid(the_repository, p, &commit_oid)) { unsigned long size; char *buf = read_object_with_reference(the_repository, &commit_oid, @@ -2600,7 +2600,7 @@ static int parse_objectish(struct branch *b, const char *objectish) } else parse_from_existing(b); } - } else if (!get_oid(objectish, &b->oid)) { + } else if (!repo_get_oid(the_repository, objectish, &b->oid)) { parse_from_existing(b); if (is_null_oid(&b->oid)) b->delete = 1; @@ -2655,7 +2655,7 @@ static struct hash_list *parse_merge(unsigned int *count) if (oe->type != OBJ_COMMIT) die("Mark :%" PRIuMAX " not a commit", idnum); oidcpy(&n->oid, &oe->idx.oid); - } else if (!get_oid(from, &n->oid)) { + } else if (!repo_get_oid(the_repository, from, &n->oid)) { unsigned long size; char *buf = read_object_with_reference(the_repository, &n->oid, @@ -2828,7 +2828,7 @@ static void parse_new_tag(const char *arg) oe = find_mark(marks, from_mark); type = oe->type; oidcpy(&oid, &oe->idx.oid); - } else if (!get_oid(from, &oid)) { + } else if (!repo_get_oid(the_repository, from, &oid)) { struct object_entry *oe = find_object(&oid); if (!oe) { type = oid_object_info(the_repository, &oid, NULL); diff --git a/builtin/fetch.c b/builtin/fetch.c index 7221e57f352..6bab662829f 100644 --- a/builtin/fetch.c +++ b/builtin/fetch.c @@ -1490,7 +1490,7 @@ static void add_negotiation_tips(struct git_transport_options *smart_options) int old_nr; if (!has_glob_specials(s)) { struct object_id oid; - if (get_oid(s, &oid)) + if (repo_get_oid(the_repository, s, &oid)) die(_("%s is not a valid object"), s); if (!has_object(the_repository, &oid, 0)) die(_("the object %s does not exist"), s); diff --git a/builtin/fsck.c b/builtin/fsck.c index c4a633c0329..4537d9f0f22 100644 --- a/builtin/fsck.c +++ b/builtin/fsck.c @@ -959,7 +959,7 @@ int cmd_fsck(int argc, const char **argv, const char *prefix) for (i = 0; i < argc; i++) { const char *arg = argv[i]; struct object_id oid; - if (!get_oid(arg, &oid)) { + if (!repo_get_oid(the_repository, arg, &oid)) { struct object *obj = lookup_object(the_repository, &oid); diff --git a/builtin/log.c b/builtin/log.c index 4693385e8ed..1e7bbedf5d2 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -1656,7 +1656,7 @@ static struct commit *get_base_commit(const char *base_commit, struct commit *commit; struct object_id oid; - if (get_oid(upstream, &oid)) { + if (repo_get_oid(the_repository, upstream, &oid)) { if (die_on_failure) die(_("failed to resolve '%s' as a valid ref"), upstream); else @@ -2414,7 +2414,7 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix) static int add_pending_commit(const char *arg, struct rev_info *revs, int flags) { struct object_id oid; - if (get_oid(arg, &oid) == 0) { + if (repo_get_oid(the_repository, arg, &oid) == 0) { struct commit *commit = lookup_commit_reference(the_repository, &oid); if (commit) { @@ -2436,12 +2436,12 @@ static void print_commit(char sign, struct commit *commit, int verbose, { if (!verbose) { fprintf(file, "%c %s\n", sign, - find_unique_abbrev(&commit->object.oid, abbrev)); + repo_find_unique_abbrev(the_repository, &commit->object.oid, abbrev)); } else { struct strbuf buf = STRBUF_INIT; pp_commit_easy(CMIT_FMT_ONELINE, commit, &buf); fprintf(file, "%c %s %s\n", sign, - find_unique_abbrev(&commit->object.oid, abbrev), + repo_find_unique_abbrev(the_repository, &commit->object.oid, abbrev), buf.buf); strbuf_release(&buf); } diff --git a/builtin/ls-files.c b/builtin/ls-files.c index 26e309f533a..7fc82d7f760 100644 --- a/builtin/ls-files.c +++ b/builtin/ls-files.c @@ -363,7 +363,7 @@ static void show_ru_info(struct index_state *istate) if (!ui->mode[i]) continue; printf("%s%06o %s %d\t", tag_resolve_undo, ui->mode[i], - find_unique_abbrev(&ui->oid[i], abbrev), + repo_find_unique_abbrev(the_repository, &ui->oid[i], abbrev), i + 1); write_name(path); } @@ -578,7 +578,7 @@ void overlay_tree_on_index(struct index_state *istate, read_tree_fn_t fn = NULL; int err; - if (get_oid(tree_name, &oid)) + if (repo_get_oid(the_repository, tree_name, &oid)) die("tree-ish %s not found.", tree_name); tree = parse_tree_indirect(&oid); if (!tree) diff --git a/builtin/ls-tree.c b/builtin/ls-tree.c index 64d8e54318c..568088b6d66 100644 --- a/builtin/ls-tree.c +++ b/builtin/ls-tree.c @@ -229,7 +229,7 @@ static int show_tree_default(const struct object_id *oid, struct strbuf *base, return early; printf("%06o %s %s\t", mode, type_name(object_type(mode)), - find_unique_abbrev(oid, options->abbrev)); + repo_find_unique_abbrev(the_repository, oid, options->abbrev)); show_tree_common_default_long(options, base, pathname, base->len); return recurse; } @@ -260,7 +260,8 @@ static int show_tree_long(const struct object_id *oid, struct strbuf *base, } printf("%06o %s %s %7s\t", mode, type_name(type), - find_unique_abbrev(oid, options->abbrev), size_text); + repo_find_unique_abbrev(the_repository, oid, options->abbrev), + size_text); show_tree_common_default_long(options, base, pathname, base->len); return recurse; } @@ -311,7 +312,7 @@ static int show_tree_object(const struct object_id *oid, struct strbuf *base, if (early >= 0) return early; - str = find_unique_abbrev(oid, options->abbrev); + str = repo_find_unique_abbrev(the_repository, oid, options->abbrev); if (options->null_termination) { fputs(str, stdout); fputc('\0', stdout); @@ -434,7 +435,7 @@ int cmd_ls_tree(int argc, const char **argv, const char *prefix) ls_tree_usage, ls_tree_options); if (argc < 1) usage_with_options(ls_tree_usage, ls_tree_options); - if (get_oid(argv[0], &oid)) + if (repo_get_oid(the_repository, argv[0], &oid)) die("Not a valid object name %s", argv[0]); /* diff --git a/builtin/merge-base.c b/builtin/merge-base.c index be8f3b221c9..5b0ed0d2738 100644 --- a/builtin/merge-base.c +++ b/builtin/merge-base.c @@ -43,7 +43,7 @@ static struct commit *get_commit_reference(const char *arg) struct object_id revkey; struct commit *r; - if (get_oid(arg, &revkey)) + if (repo_get_oid(the_repository, arg, &revkey)) die("Not a valid object name %s", arg); r = lookup_commit_reference(the_repository, &revkey); if (!r) @@ -119,7 +119,7 @@ static int handle_fork_point(int argc, const char **argv) const char *commitname; commitname = (argc == 2) ? argv[1] : "HEAD"; - if (get_oid(commitname, &oid)) + if (repo_get_oid(the_repository, commitname, &oid)) die("Not a valid object name: '%s'", commitname); derived = lookup_commit_reference(the_repository, &oid); diff --git a/builtin/merge-recursive.c b/builtin/merge-recursive.c index b9acbf5d342..a50b328d943 100644 --- a/builtin/merge-recursive.c +++ b/builtin/merge-recursive.c @@ -49,7 +49,7 @@ int cmd_merge_recursive(int argc, const char **argv, const char *prefix) } if (bases_count < ARRAY_SIZE(bases)-1) { struct object_id *oid = xmalloc(sizeof(struct object_id)); - if (get_oid(argv[i], oid)) + if (repo_get_oid(the_repository, argv[i], oid)) die(_("could not parse object '%s'"), argv[i]); bases[bases_count++] = oid; } @@ -70,9 +70,9 @@ int cmd_merge_recursive(int argc, const char **argv, const char *prefix) o.branch1 = argv[++i]; o.branch2 = argv[++i]; - if (get_oid(o.branch1, &h1)) + if (repo_get_oid(the_repository, o.branch1, &h1)) die(_("could not resolve ref '%s'"), o.branch1); - if (get_oid(o.branch2, &h2)) + if (repo_get_oid(the_repository, o.branch2, &h2)) die(_("could not resolve ref '%s'"), o.branch2); o.branch1 = better1 = better_branch_name(o.branch1); diff --git a/builtin/merge.c b/builtin/merge.c index 19c31d4ff48..6a0519c39db 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -339,7 +339,7 @@ static int save_state(struct object_id *stash) else if (!len) /* no changes */ goto out; strbuf_setlen(&buffer, buffer.len-1); - if (get_oid(buffer.buf, stash)) + if (repo_get_oid(the_repository, buffer.buf, stash)) die(_("not a valid object: %s"), buffer.buf); rc = 0; out: @@ -1566,10 +1566,10 @@ int cmd_merge(int argc, const char **argv, const char *prefix) if (verbosity >= 0) { printf(_("Updating %s..%s\n"), - find_unique_abbrev(&head_commit->object.oid, - DEFAULT_ABBREV), - find_unique_abbrev(&remoteheads->item->object.oid, - DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &head_commit->object.oid, + DEFAULT_ABBREV), + repo_find_unique_abbrev(the_repository, &remoteheads->item->object.oid, + DEFAULT_ABBREV)); } commit = remoteheads->item; if (!commit) { diff --git a/builtin/name-rev.c b/builtin/name-rev.c index 723ba616a88..cd9c000f56b 100644 --- a/builtin/name-rev.c +++ b/builtin/name-rev.c @@ -494,7 +494,8 @@ static void show_name(const struct object *obj, else if (allow_undefined) printf("undefined\n"); else if (always) - printf("%s\n", find_unique_abbrev(oid, DEFAULT_ABBREV)); + printf("%s\n", + repo_find_unique_abbrev(the_repository, oid, DEFAULT_ABBREV)); else die("cannot describe '%s'", oid_to_hex(oid)); strbuf_release(&buf); @@ -528,7 +529,7 @@ static void name_rev_line(char *p, struct name_ref_data *data) counter = 0; *(p+1) = 0; - if (!get_oid(p - (hexsz - 1), &oid)) { + if (!repo_get_oid(the_repository, p - (hexsz - 1), &oid)) { struct object *o = lookup_object(the_repository, &oid); if (o) @@ -605,7 +606,7 @@ int cmd_name_rev(int argc, const char **argv, const char *prefix) struct object *object; struct commit *commit; - if (get_oid(*argv, &oid)) { + if (repo_get_oid(the_repository, *argv, &oid)) { fprintf(stderr, "Could not get sha1 for %s. Skipping.\n", *argv); continue; diff --git a/builtin/notes.c b/builtin/notes.c index 75ce7f3f574..73c9c691781 100644 --- a/builtin/notes.c +++ b/builtin/notes.c @@ -259,7 +259,7 @@ static int parse_reuse_arg(const struct option *opt, const char *arg, int unset) if (d->buf.len) strbuf_addch(&d->buf, '\n'); - if (get_oid(arg, &object)) + if (repo_get_oid(the_repository, arg, &object)) die(_("failed to resolve '%s' as a valid ref."), arg); if (!(buf = read_object_file(&object, &type, &len))) die(_("failed to read object '%s'."), arg); @@ -309,9 +309,9 @@ static int notes_copy_from_stdin(int force, const char *rewrite_cmd) die(_("malformed input line: '%s'."), buf.buf); strbuf_rtrim(split[0]); strbuf_rtrim(split[1]); - if (get_oid(split[0]->buf, &from_obj)) + if (repo_get_oid(the_repository, split[0]->buf, &from_obj)) die(_("failed to resolve '%s' as a valid ref."), split[0]->buf); - if (get_oid(split[1]->buf, &to_obj)) + if (repo_get_oid(the_repository, split[1]->buf, &to_obj)) die(_("failed to resolve '%s' as a valid ref."), split[1]->buf); if (rewrite_cmd) @@ -379,7 +379,7 @@ static int list(int argc, const char **argv, const char *prefix) t = init_notes_check("list", 0); if (argc) { - if (get_oid(argv[0], &object)) + if (repo_get_oid(the_repository, argv[0], &object)) die(_("failed to resolve '%s' as a valid ref."), argv[0]); note = get_note(t, &object); if (note) { @@ -434,7 +434,7 @@ static int add(int argc, const char **argv, const char *prefix) object_ref = argc > 1 ? argv[1] : "HEAD"; - if (get_oid(object_ref, &object)) + if (repo_get_oid(the_repository, object_ref, &object)) die(_("failed to resolve '%s' as a valid ref."), object_ref); t = init_notes_check("add", NOTES_INIT_WRITABLE); @@ -522,12 +522,12 @@ static int copy(int argc, const char **argv, const char *prefix) usage_with_options(git_notes_copy_usage, options); } - if (get_oid(argv[0], &from_obj)) + if (repo_get_oid(the_repository, argv[0], &from_obj)) die(_("failed to resolve '%s' as a valid ref."), argv[0]); object_ref = 1 < argc ? argv[1] : "HEAD"; - if (get_oid(object_ref, &object)) + if (repo_get_oid(the_repository, object_ref, &object)) die(_("failed to resolve '%s' as a valid ref."), object_ref); t = init_notes_check("copy", NOTES_INIT_WRITABLE); @@ -606,7 +606,7 @@ static int append_edit(int argc, const char **argv, const char *prefix) object_ref = 1 < argc ? argv[1] : "HEAD"; - if (get_oid(object_ref, &object)) + if (repo_get_oid(the_repository, object_ref, &object)) die(_("failed to resolve '%s' as a valid ref."), object_ref); t = init_notes_check(argv[0], NOTES_INIT_WRITABLE); @@ -668,7 +668,7 @@ static int show(int argc, const char **argv, const char *prefix) object_ref = argc ? argv[0] : "HEAD"; - if (get_oid(object_ref, &object)) + if (repo_get_oid(the_repository, object_ref, &object)) die(_("failed to resolve '%s' as a valid ref."), object_ref); t = init_notes_check("show", 0); @@ -718,7 +718,7 @@ static int merge_commit(struct notes_merge_options *o) * and target notes ref from .git/NOTES_MERGE_REF. */ - if (get_oid("NOTES_MERGE_PARTIAL", &oid)) + if (repo_get_oid(the_repository, "NOTES_MERGE_PARTIAL", &oid)) die(_("failed to read ref NOTES_MERGE_PARTIAL")); else if (!(partial = lookup_commit_reference(the_repository, &oid))) die(_("could not find commit from NOTES_MERGE_PARTIAL.")); @@ -897,7 +897,7 @@ static int remove_one_note(struct notes_tree *t, const char *name, unsigned flag { int status; struct object_id oid; - if (get_oid(name, &oid)) + if (repo_get_oid(the_repository, name, &oid)) return error(_("Failed to resolve '%s' as a valid ref."), name); status = remove_note(t, oid.hash); if (status) diff --git a/builtin/prune.c b/builtin/prune.c index 119a253a2ad..202f7367746 100644 --- a/builtin/prune.c +++ b/builtin/prune.c @@ -172,7 +172,7 @@ int cmd_prune(int argc, const char **argv, const char *prefix) struct object_id oid; const char *name = *argv++; - if (!get_oid(name, &oid)) { + if (!repo_get_oid(the_repository, name, &oid)) { struct object *object = parse_object_or_die(&oid, name); add_pending_object(&revs, object, ""); diff --git a/builtin/pull.c b/builtin/pull.c index 56f679d94a0..bc0f29064b3 100644 --- a/builtin/pull.c +++ b/builtin/pull.c @@ -1031,7 +1031,7 @@ int cmd_pull(int argc, const char **argv, const char *prefix) if (file_exists(git_path_merge_head(the_repository))) die_conclude_merge(); - if (get_oid("HEAD", &orig_head)) + if (repo_get_oid(the_repository, "HEAD", &orig_head)) oidclr(&orig_head); if (opt_rebase) { @@ -1056,7 +1056,7 @@ int cmd_pull(int argc, const char **argv, const char *prefix) if (opt_dry_run) return 0; - if (get_oid("HEAD", &curr_head)) + if (repo_get_oid(the_repository, "HEAD", &curr_head)) oidclr(&curr_head); if (!is_null_oid(&orig_head) && !is_null_oid(&curr_head) && diff --git a/builtin/range-diff.c b/builtin/range-diff.c index aecfae12d3a..556ee84b6d3 100644 --- a/builtin/range-diff.c +++ b/builtin/range-diff.c @@ -65,20 +65,20 @@ int cmd_range_diff(int argc, const char **argv, const char *prefix) if (dash_dash == 3 || (dash_dash < 0 && argc > 2 && - !get_oid_committish(argv[0], &oid) && - !get_oid_committish(argv[1], &oid) && - !get_oid_committish(argv[2], &oid))) { + !repo_get_oid_committish(the_repository, argv[0], &oid) && + !repo_get_oid_committish(the_repository, argv[1], &oid) && + !repo_get_oid_committish(the_repository, argv[2], &oid))) { if (dash_dash < 0) ; /* already validated arguments */ - else if (get_oid_committish(argv[0], &oid)) + else if (repo_get_oid_committish(the_repository, argv[0], &oid)) usage_msg_optf(_("not a revision: '%s'"), builtin_range_diff_usage, options, argv[0]); - else if (get_oid_committish(argv[1], &oid)) + else if (repo_get_oid_committish(the_repository, argv[1], &oid)) usage_msg_optf(_("not a revision: '%s'"), builtin_range_diff_usage, options, argv[1]); - else if (get_oid_committish(argv[2], &oid)) + else if (repo_get_oid_committish(the_repository, argv[2], &oid)) usage_msg_optf(_("not a revision: '%s'"), builtin_range_diff_usage, options, argv[2]); diff --git a/builtin/read-tree.c b/builtin/read-tree.c index 11759c415f3..fe19852634b 100644 --- a/builtin/read-tree.c +++ b/builtin/read-tree.c @@ -199,7 +199,7 @@ int cmd_read_tree(int argc, const char **argv, const char *cmd_prefix) for (i = 0; i < argc; i++) { const char *arg = argv[i]; - if (get_oid(arg, &oid)) + if (repo_get_oid(the_repository, arg, &oid)) die("Not a valid object name %s", arg); if (list_tree(&oid) < 0) die("failed to unpack tree object %s", arg); diff --git a/builtin/rebase.c b/builtin/rebase.c index 5b7b908b66b..55ecc2d5f33 100644 --- a/builtin/rebase.c +++ b/builtin/rebase.c @@ -219,13 +219,15 @@ static int get_revision_ranges(struct commit *upstream, struct commit *onto, *revisions = xstrfmt("%s...%s", oid_to_hex(&base_rev->object.oid), oid_to_hex(orig_head)); - shorthead = find_unique_abbrev(orig_head, DEFAULT_ABBREV); + shorthead = repo_find_unique_abbrev(the_repository, orig_head, + DEFAULT_ABBREV); if (upstream) { const char *shortrev; - shortrev = find_unique_abbrev(&base_rev->object.oid, - DEFAULT_ABBREV); + shortrev = repo_find_unique_abbrev(the_repository, + &base_rev->object.oid, + DEFAULT_ABBREV); *shortrevisions = xstrfmt("%s..%s", shortrev, shorthead); } else @@ -1262,7 +1264,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix) int fd; /* Sanity check */ - if (get_oid("HEAD", &head)) + if (repo_get_oid(the_repository, "HEAD", &head)) die(_("Cannot read HEAD")); fd = repo_hold_locked_index(the_repository, &lock_file, 0); @@ -1681,7 +1683,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix) } else if (!options.onto_name) options.onto_name = options.upstream_name; if (strstr(options.onto_name, "...")) { - if (get_oid_mb(options.onto_name, &branch_base) < 0) { + if (repo_get_oid_mb(the_repository, options.onto_name, &branch_base) < 0) { if (keep_base) die(_("'%s': need exactly one merge base with branch"), options.upstream_name); diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c index cccdb73807c..c6ab537a44f 100644 --- a/builtin/receive-pack.c +++ b/builtin/receive-pack.c @@ -1344,7 +1344,7 @@ static int head_has_history(void) { struct object_id oid; - return !get_oid("HEAD", &oid); + return !repo_get_oid(the_repository, "HEAD", &oid); } static const char *push_to_deploy(unsigned char *sha1, @@ -1680,11 +1680,11 @@ static void check_aliased_update_internal(struct command *cmd, rp_error("refusing inconsistent update between symref '%s' (%s..%s) and" " its target '%s' (%s..%s)", cmd->ref_name, - find_unique_abbrev(&cmd->old_oid, DEFAULT_ABBREV), - find_unique_abbrev(&cmd->new_oid, DEFAULT_ABBREV), + repo_find_unique_abbrev(the_repository, &cmd->old_oid, DEFAULT_ABBREV), + repo_find_unique_abbrev(the_repository, &cmd->new_oid, DEFAULT_ABBREV), dst_cmd->ref_name, - find_unique_abbrev(&dst_cmd->old_oid, DEFAULT_ABBREV), - find_unique_abbrev(&dst_cmd->new_oid, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &dst_cmd->old_oid, DEFAULT_ABBREV), + repo_find_unique_abbrev(the_repository, &dst_cmd->new_oid, DEFAULT_ABBREV)); cmd->error_string = dst_cmd->error_string = "inconsistent aliased update"; diff --git a/builtin/replace.c b/builtin/replace.c index 71d8e949e35..f765a3e2d75 100644 --- a/builtin/replace.c +++ b/builtin/replace.c @@ -56,7 +56,7 @@ static int show_reference(struct repository *r, const char *refname, struct object_id object; enum object_type obj_type, repl_type; - if (get_oid(refname, &object)) + if (repo_get_oid(the_repository, refname, &object)) return error(_("failed to resolve '%s' as a valid ref"), refname); obj_type = oid_object_info(r, &object, NULL); @@ -114,7 +114,7 @@ static int for_each_replace_name(const char **argv, each_replace_name_fn fn) base_len = ref.len; for (p = argv; *p; p++) { - if (get_oid(*p, &oid)) { + if (repo_get_oid(the_repository, *p, &oid)) { error("failed to resolve '%s' as a valid ref", *p); had_error = 1; continue; @@ -208,10 +208,10 @@ static int replace_object(const char *object_ref, const char *replace_ref, int f { struct object_id object, repl; - if (get_oid(object_ref, &object)) + if (repo_get_oid(the_repository, object_ref, &object)) return error(_("failed to resolve '%s' as a valid ref"), object_ref); - if (get_oid(replace_ref, &repl)) + if (repo_get_oid(the_repository, replace_ref, &repl)) return error(_("failed to resolve '%s' as a valid ref"), replace_ref); @@ -322,7 +322,7 @@ static int edit_and_replace(const char *object_ref, int force, int raw) struct object_id old_oid, new_oid, prev; struct strbuf ref = STRBUF_INIT; - if (get_oid(object_ref, &old_oid) < 0) + if (repo_get_oid(the_repository, object_ref, &old_oid) < 0) return error(_("not a valid object name: '%s'"), object_ref); type = oid_object_info(the_repository, &old_oid, NULL); @@ -377,7 +377,7 @@ static int replace_parents(struct strbuf *buf, int argc, const char **argv) struct object_id oid; struct commit *commit; - if (get_oid(argv[i], &oid) < 0) { + if (repo_get_oid(the_repository, argv[i], &oid) < 0) { strbuf_release(&new_parents); return error(_("not a valid object name: '%s'"), argv[i]); @@ -424,7 +424,7 @@ static int check_one_mergetag(struct commit *commit, /* iterate over new parents */ for (i = 1; i < mergetag_data->argc; i++) { struct object_id oid; - if (get_oid(mergetag_data->argv[i], &oid) < 0) + if (repo_get_oid(the_repository, mergetag_data->argv[i], &oid) < 0) return error(_("not a valid object name: '%s'"), mergetag_data->argv[i]); if (oideq(get_tagged_oid(tag), &oid)) @@ -454,7 +454,7 @@ static int create_graft(int argc, const char **argv, int force, int gentle) const char *buffer; unsigned long size; - if (get_oid(old_ref, &old_oid) < 0) + if (repo_get_oid(the_repository, old_ref, &old_oid) < 0) return error(_("not a valid object name: '%s'"), old_ref); commit = lookup_commit_reference(the_repository, &old_oid); if (!commit) diff --git a/builtin/reset.c b/builtin/reset.c index 24b04aeecb9..cd4165537c5 100644 --- a/builtin/reset.c +++ b/builtin/reset.c @@ -90,7 +90,7 @@ static int reset_index(const char *ref, const struct object_id *oid, int reset_t if (reset_type == KEEP) { struct object_id head_oid; - if (get_oid("HEAD", &head_oid)) + if (repo_get_oid(the_repository, "HEAD", &head_oid)) return error(_("You do not have a valid HEAD.")); if (!fill_tree_descriptor(the_repository, desc + nr, &head_oid)) return error(_("Failed to find tree of HEAD.")); @@ -125,7 +125,7 @@ static void print_new_head_line(struct commit *commit) struct strbuf buf = STRBUF_INIT; printf(_("HEAD is now at %s"), - find_unique_abbrev(&commit->object.oid, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &commit->object.oid, DEFAULT_ABBREV)); pp_commit_easy(CMIT_FMT_ONELINE, commit, &buf); if (buf.len > 0) @@ -261,8 +261,8 @@ static void parse_args(struct pathspec *pathspec, * has to be unambiguous. If there is a single argument, it * can not be a tree */ - else if ((!argv[1] && !get_oid_committish(argv[0], &unused)) || - (argv[1] && !get_oid_treeish(argv[0], &unused))) { + else if ((!argv[1] && !repo_get_oid_committish(the_repository, argv[0], &unused)) || + (argv[1] && !repo_get_oid_treeish(the_repository, argv[0], &unused))) { /* * Ok, argv[0] looks like a commit/tree; it should not * be a filename. @@ -289,9 +289,9 @@ static int reset_refs(const char *rev, const struct object_id *oid) struct object_id *orig = NULL, oid_orig, *old_orig = NULL, oid_old_orig; - if (!get_oid("ORIG_HEAD", &oid_old_orig)) + if (!repo_get_oid(the_repository, "ORIG_HEAD", &oid_old_orig)) old_orig = &oid_old_orig; - if (!get_oid("HEAD", &oid_orig)) { + if (!repo_get_oid(the_repository, "HEAD", &oid_orig)) { orig = &oid_orig; set_reflog_message(&msg, "updating ORIG_HEAD", NULL); update_ref(msg.buf, "ORIG_HEAD", orig, old_orig, 0, @@ -367,13 +367,14 @@ int cmd_reset(int argc, const char **argv, const char *prefix) die(_("the option '%s' requires '%s'"), "--pathspec-file-nul", "--pathspec-from-file"); } - unborn = !strcmp(rev, "HEAD") && get_oid("HEAD", &oid); + unborn = !strcmp(rev, "HEAD") && repo_get_oid(the_repository, "HEAD", + &oid); if (unborn) { /* reset on unborn branch: treat as reset to empty tree */ oidcpy(&oid, the_hash_algo->empty_tree); } else if (!pathspec.nr && !patch_mode) { struct commit *commit; - if (get_oid_committish(rev, &oid)) + if (repo_get_oid_committish(the_repository, rev, &oid)) die(_("Failed to resolve '%s' as a valid revision."), rev); commit = lookup_commit_reference(the_repository, &oid); if (!commit) @@ -381,7 +382,7 @@ int cmd_reset(int argc, const char **argv, const char *prefix) oidcpy(&oid, &commit->object.oid); } else { struct tree *tree; - if (get_oid_treeish(rev, &oid)) + if (repo_get_oid_treeish(the_repository, rev, &oid)) die(_("Failed to resolve '%s' as a valid tree."), rev); tree = parse_tree_indirect(&oid); if (!tree) diff --git a/builtin/rev-list.c b/builtin/rev-list.c index 85e522dff8a..e88affc2764 100644 --- a/builtin/rev-list.c +++ b/builtin/rev-list.c @@ -135,7 +135,7 @@ static void show_commit(struct commit *commit, void *data) if (!revs->graph) fputs(get_revision_mark(revs, commit), stdout); if (revs->abbrev_commit && revs->abbrev) - fputs(find_unique_abbrev(&commit->object.oid, revs->abbrev), + fputs(repo_find_unique_abbrev(the_repository, &commit->object.oid, revs->abbrev), stdout); else fputs(oid_to_hex(&commit->object.oid), stdout); diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c index e1fa9c6348c..5db9d6ad518 100644 --- a/builtin/rev-parse.c +++ b/builtin/rev-parse.c @@ -164,7 +164,8 @@ static void show_rev(int type, const struct object_id *oid, const char *name) } } else if (abbrev) - show_with_type(type, find_unique_abbrev(oid, abbrev)); + show_with_type(type, + repo_find_unique_abbrev(the_repository, oid, abbrev)); else show_with_type(type, oid_to_hex(oid)); } @@ -189,7 +190,7 @@ static int show_default(void) struct object_id oid; def = NULL; - if (!get_oid(s, &oid)) { + if (!repo_get_oid(the_repository, s, &oid)) { show_rev(NORMAL, &oid, s); return 1; } @@ -281,7 +282,7 @@ static int try_difference(const char *arg) return 0; } - if (!get_oid_committish(start, &start_oid) && !get_oid_committish(end, &end_oid)) { + if (!repo_get_oid_committish(the_repository, start, &start_oid) && !repo_get_oid_committish(the_repository, end, &end_oid)) { show_rev(NORMAL, &end_oid, end); show_rev(symmetric ? NORMAL : REVERSED, &start_oid, start); if (symmetric) { @@ -339,7 +340,7 @@ static int try_parent_shorthands(const char *arg) return 0; *dotdot = 0; - if (get_oid_committish(arg, &oid) || + if (repo_get_oid_committish(the_repository, arg, &oid) || !(commit = lookup_commit_reference(the_repository, &oid))) { *dotdot = '^'; return 0; @@ -870,7 +871,8 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix) continue; } if (skip_prefix(arg, "--disambiguate=", &arg)) { - for_each_abbrev(arg, show_abbrev, NULL); + repo_for_each_abbrev(the_repository, arg, + show_abbrev, NULL); continue; } if (!strcmp(arg, "--bisect")) { diff --git a/builtin/rm.c b/builtin/rm.c index dc198f79082..e093cb99966 100644 --- a/builtin/rm.c +++ b/builtin/rm.c @@ -371,7 +371,7 @@ int cmd_rm(int argc, const char **argv, const char *prefix) */ if (!force) { struct object_id oid; - if (get_oid("HEAD", &oid)) + if (repo_get_oid(the_repository, "HEAD", &oid)) oidclr(&oid); if (check_local_mod(&oid, index_only)) exit(1); diff --git a/builtin/show-branch.c b/builtin/show-branch.c index 8342b68aef7..9d208db3b43 100644 --- a/builtin/show-branch.c +++ b/builtin/show-branch.c @@ -313,8 +313,8 @@ static void show_one_commit(struct commit *commit, int no_name) } else printf("[%s] ", - find_unique_abbrev(&commit->object.oid, - DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &commit->object.oid, + DEFAULT_ABBREV)); } puts(pretty_str); strbuf_release(&pretty); @@ -415,7 +415,7 @@ static int append_head_ref(const char *refname, const struct object_id *oid, /* If both heads/foo and tags/foo exists, get_sha1 would * get confused. */ - if (get_oid(refname + ofs, &tmp) || !oideq(&tmp, oid)) + if (repo_get_oid(the_repository, refname + ofs, &tmp) || !oideq(&tmp, oid)) ofs = 5; return append_ref(refname + ofs, oid, 0); } @@ -430,7 +430,7 @@ static int append_remote_ref(const char *refname, const struct object_id *oid, /* If both heads/foo and tags/foo exists, get_sha1 would * get confused. */ - if (get_oid(refname + ofs, &tmp) || !oideq(&tmp, oid)) + if (repo_get_oid(the_repository, refname + ofs, &tmp) || !oideq(&tmp, oid)) ofs = 5; return append_ref(refname + ofs, oid, 0); } @@ -534,7 +534,7 @@ static int show_independent(struct commit **rev, static void append_one_rev(const char *av) { struct object_id revkey; - if (!get_oid(av, &revkey)) { + if (!repo_get_oid(the_repository, av, &revkey)) { append_ref(av, &revkey, 0); return; } @@ -837,7 +837,7 @@ int cmd_show_branch(int ac, const char **av, const char *prefix) die(Q_("cannot handle more than %d rev.", "cannot handle more than %d revs.", MAX_REVS), MAX_REVS); - if (get_oid(ref_name[num_rev], &revkey)) + if (repo_get_oid(the_repository, ref_name[num_rev], &revkey)) die(_("'%s' is not a valid ref."), ref_name[num_rev]); commit = lookup_commit_reference(the_repository, &revkey); if (!commit) diff --git a/builtin/show-ref.c b/builtin/show-ref.c index 1f28d7fe4b9..b5a68e23e65 100644 --- a/builtin/show-ref.c +++ b/builtin/show-ref.c @@ -34,7 +34,7 @@ static void show_one(const char *refname, const struct object_id *oid) if (quiet) return; - hex = find_unique_abbrev(oid, abbrev); + hex = repo_find_unique_abbrev(the_repository, oid, abbrev); if (hash_only) printf("%s\n", hex); else @@ -44,7 +44,7 @@ static void show_one(const char *refname, const struct object_id *oid) return; if (!peel_iterated_oid(oid, &peeled)) { - hex = find_unique_abbrev(&peeled, abbrev); + hex = repo_find_unique_abbrev(the_repository, &peeled, abbrev); printf("%s %s^{}\n", hex, refname); } } diff --git a/builtin/sparse-checkout.c b/builtin/sparse-checkout.c index 8d5ae6f2a60..d73d3d2d825 100644 --- a/builtin/sparse-checkout.c +++ b/builtin/sparse-checkout.c @@ -469,7 +469,7 @@ static int sparse_checkout_init(int argc, const char **argv, const char *prefix) return update_working_directory(NULL); } - if (get_oid("HEAD", &oid)) { + if (repo_get_oid(the_repository, "HEAD", &oid)) { FILE *fp; /* assume we are in a fresh repo, but update the sparse-checkout file */ diff --git a/builtin/stash.c b/builtin/stash.c index 6a12fed2713..dd5f67e7e6e 100644 --- a/builtin/stash.c +++ b/builtin/stash.c @@ -202,7 +202,7 @@ static int get_stash_info(struct stash_info *info, int argc, const char **argv) revision = info->revision.buf; - if (get_oid(revision, &info->w_commit)) + if (repo_get_oid(the_repository, revision, &info->w_commit)) return error(_("%s is not a valid reference"), revision); assert_stash_like(info, revision); @@ -232,7 +232,7 @@ static int get_stash_info(struct stash_info *info, int argc, const char **argv) static int do_clear_stash(void) { struct object_id obj; - if (get_oid(ref_stash, &obj)) + if (repo_get_oid(the_repository, ref_stash, &obj)) return 0; return delete_ref(NULL, ref_stash, &obj, 0); @@ -1084,7 +1084,7 @@ static int check_changes_tracked_files(const struct pathspec *ps) int ret = 0; /* No initial commit. */ - if (get_oid("HEAD", &dummy)) + if (repo_get_oid(the_repository, "HEAD", &dummy)) return -1; if (repo_read_index(the_repository) < 0) @@ -1356,7 +1356,7 @@ static int do_create_stash(const struct pathspec *ps, struct strbuf *stash_msg_b goto done; } - if (get_oid("HEAD", &info->b_commit)) { + if (repo_get_oid(the_repository, "HEAD", &info->b_commit)) { if (!quiet) fprintf_ln(stderr, _("You do not have " "the initial commit yet")); @@ -1374,8 +1374,9 @@ static int do_create_stash(const struct pathspec *ps, struct strbuf *stash_msg_b branch_ref = resolve_ref_unsafe("HEAD", 0, NULL, &flags); if (flags & REF_ISSYMREF) skip_prefix(branch_ref, "refs/heads/", &branch_name); - head_short_sha1 = find_unique_abbrev(&head_commit->object.oid, - DEFAULT_ABBREV); + head_short_sha1 = repo_find_unique_abbrev(the_repository, + &head_commit->object.oid, + DEFAULT_ABBREV); strbuf_addf(&msg, "%s: %s ", branch_name, head_short_sha1); pp_commit_easy(CMIT_FMT_ONELINE, head_commit, &msg); diff --git a/builtin/submodule--helper.c b/builtin/submodule--helper.c index d05d1a84623..b21857479de 100644 --- a/builtin/submodule--helper.c +++ b/builtin/submodule--helper.c @@ -1176,7 +1176,7 @@ static int module_summary(int argc, const char **argv, const char *prefix) if (!summary_limit) return 0; - if (!get_oid(argc ? argv[0] : "HEAD", &head_oid)) { + if (!repo_get_oid(the_repository, argc ? argv[0] : "HEAD", &head_oid)) { if (argc) { argv++; argc--; @@ -1189,7 +1189,7 @@ static int module_summary(int argc, const char **argv, const char *prefix) argc--; } } else { - if (get_oid("HEAD", &head_oid)) + if (repo_get_oid(the_repository, "HEAD", &head_oid)) die(_("could not fetch a revision for HEAD")); } diff --git a/builtin/tag.c b/builtin/tag.c index adcaa547b0d..7af7eaa4139 100644 --- a/builtin/tag.c +++ b/builtin/tag.c @@ -138,7 +138,7 @@ static int delete_tags(const char **argv) if (!ref_exists(name)) printf(_("Deleted tag '%s' (was %s)\n"), item->string + 10, - find_unique_abbrev(oid, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, oid, DEFAULT_ABBREV)); free(oid); } @@ -590,7 +590,7 @@ int cmd_tag(int argc, const char **argv, const char *prefix) if (argc > 2) die(_("too many arguments")); - if (get_oid(object_ref, &object)) + if (repo_get_oid(the_repository, object_ref, &object)) die(_("Failed to resolve '%s' as a valid ref."), object_ref); if (strbuf_check_tag_ref(&ref, tag)) @@ -631,7 +631,7 @@ int cmd_tag(int argc, const char **argv, const char *prefix) ref_transaction_free(transaction); if (force && !is_null_oid(&prev) && !oideq(&prev, &object)) printf(_("Updated tag '%s' (was %s)\n"), tag, - find_unique_abbrev(&prev, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &prev, DEFAULT_ABBREV)); cleanup: ref_sorting_release(sorting); diff --git a/builtin/unpack-file.c b/builtin/unpack-file.c index e9b105a5397..b9e258a553f 100644 --- a/builtin/unpack-file.c +++ b/builtin/unpack-file.c @@ -30,7 +30,7 @@ int cmd_unpack_file(int argc, const char **argv, const char *prefix) if (argc != 2 || !strcmp(argv[1], "-h")) usage("git unpack-file "); - if (get_oid(argv[1], &oid)) + if (repo_get_oid(the_repository, argv[1], &oid)) die("Not a valid object name %s", argv[1]); git_config(git_default_config, NULL); diff --git a/builtin/update-ref.c b/builtin/update-ref.c index a84e7b47a20..1ba0727ba77 100644 --- a/builtin/update-ref.c +++ b/builtin/update-ref.c @@ -116,7 +116,7 @@ static int parse_next_oid(const char **next, const char *end, (*next)++; *next = parse_arg(*next, &arg); if (arg.len) { - if (get_oid(arg.buf, oid)) + if (repo_get_oid(the_repository, arg.buf, oid)) goto invalid; } else { /* Without -z, an empty value means all zeros: */ @@ -134,7 +134,7 @@ static int parse_next_oid(const char **next, const char *end, *next += arg.len; if (arg.len) { - if (get_oid(arg.buf, oid)) + if (repo_get_oid(the_repository, arg.buf, oid)) goto invalid; } else if (flags & PARSE_SHA1_ALLOW_EMPTY) { /* With -z, treat an empty value as all zeros: */ @@ -549,7 +549,7 @@ int cmd_update_ref(int argc, const char **argv, const char *prefix) refname = argv[0]; value = argv[1]; oldval = argv[2]; - if (get_oid(value, &oid)) + if (repo_get_oid(the_repository, value, &oid)) die("%s: not a valid SHA1", value); } @@ -560,7 +560,7 @@ int cmd_update_ref(int argc, const char **argv, const char *prefix) * must not already exist: */ oidclr(&oldoid); - else if (get_oid(oldval, &oldoid)) + else if (repo_get_oid(the_repository, oldval, &oldoid)) die("%s: not a valid old SHA1", oldval); } diff --git a/builtin/verify-commit.c b/builtin/verify-commit.c index 7aedf10e856..2a0c927ee93 100644 --- a/builtin/verify-commit.c +++ b/builtin/verify-commit.c @@ -39,7 +39,7 @@ static int verify_commit(const char *name, unsigned flags) struct object_id oid; struct object *obj; - if (get_oid(name, &oid)) + if (repo_get_oid(the_repository, name, &oid)) return error("commit '%s' not found.", name); obj = parse_object(the_repository, &oid); diff --git a/builtin/verify-tag.c b/builtin/verify-tag.c index 5c00b0b0f77..2a9aac43b85 100644 --- a/builtin/verify-tag.c +++ b/builtin/verify-tag.c @@ -52,7 +52,7 @@ int cmd_verify_tag(int argc, const char **argv, const char *prefix) struct object_id oid; const char *name = argv[i++]; - if (get_oid(name, &oid)) { + if (repo_get_oid(the_repository, name, &oid)) { had_error = !!error("tag '%s' not found.", name); continue; } diff --git a/builtin/worktree.c b/builtin/worktree.c index 80d05e246d8..62c02fe2dee 100644 --- a/builtin/worktree.c +++ b/builtin/worktree.c @@ -553,7 +553,7 @@ static void print_preparing_worktree_line(int detach, else fprintf_ln(stderr, _("Preparing worktree (resetting branch '%s'; was at %s)"), new_branch, - find_unique_abbrev(&commit->object.oid, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &commit->object.oid, DEFAULT_ABBREV)); } else if (new_branch) { fprintf_ln(stderr, _("Preparing worktree (new branch '%s')"), new_branch); } else { @@ -567,7 +567,7 @@ static void print_preparing_worktree_line(int detach, if (!commit) die(_("invalid reference: %s"), branch); fprintf_ln(stderr, _("Preparing worktree (detached HEAD %s)"), - find_unique_abbrev(&commit->object.oid, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &commit->object.oid, DEFAULT_ABBREV)); } strbuf_release(&s); } @@ -757,7 +757,7 @@ static void show_worktree(struct worktree *wt, int path_maxlen, int abbrev_len) strbuf_addstr(&sb, "(bare)"); else { strbuf_addf(&sb, "%-*s ", abbrev_len, - find_unique_abbrev(&wt->head_oid, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &wt->head_oid, DEFAULT_ABBREV)); if (wt->is_detached) strbuf_addstr(&sb, "(detached HEAD)"); else if (wt->head_ref) { @@ -794,7 +794,7 @@ static void measure_widths(struct worktree **wt, int *abbrev, int *maxlen) if (path_len > *maxlen) *maxlen = path_len; - sha1_len = strlen(find_unique_abbrev(&wt[i]->head_oid, *abbrev)); + sha1_len = strlen(repo_find_unique_abbrev(the_repository, &wt[i]->head_oid, *abbrev)); if (sha1_len > *abbrev) *abbrev = sha1_len; } diff --git a/cache.h b/cache.h index 5a736a2b7e7..1d05a8e945f 100644 --- a/cache.h +++ b/cache.h @@ -1103,9 +1103,7 @@ void check_repository_format(struct repository_format *fmt); * reentrant, as it calls into other non-reentrant git code. */ const char *repo_find_unique_abbrev(struct repository *r, const struct object_id *oid, int len); -#define find_unique_abbrev(oid, len) repo_find_unique_abbrev(the_repository, oid, len) int repo_find_unique_abbrev_r(struct repository *r, char *hex, const struct object_id *oid, int len); -#define find_unique_abbrev_r(hex, oid, len) repo_find_unique_abbrev_r(the_repository, hex, oid, len) /* set default permissions by passing mode arguments to open(2) */ int git_mkstemps_mode(char *pattern, int suffix_len, int mode); @@ -1330,17 +1328,8 @@ enum get_oid_result get_oid_with_context(struct repository *repo, const char *st unsigned flags, struct object_id *oid, struct object_context *oc); -#define get_oid(str, oid) repo_get_oid(the_repository, str, oid) -#define get_oid_commit(str, oid) repo_get_oid_commit(the_repository, str, oid) -#define get_oid_committish(str, oid) repo_get_oid_committish(the_repository, str, oid) -#define get_oid_tree(str, oid) repo_get_oid_tree(the_repository, str, oid) -#define get_oid_treeish(str, oid) repo_get_oid_treeish(the_repository, str, oid) -#define get_oid_blob(str, oid) repo_get_oid_blob(the_repository, str, oid) -#define get_oid_mb(str, oid) repo_get_oid_mb(the_repository, str, oid) - typedef int each_abbrev_fn(const struct object_id *oid, void *); int repo_for_each_abbrev(struct repository *r, const char *prefix, each_abbrev_fn, void *); -#define for_each_abbrev(prefix, fn, data) repo_for_each_abbrev(the_repository, prefix, fn, data) int set_disambiguate_hint_config(const char *var, const char *value); @@ -1388,8 +1377,6 @@ int repo_interpret_branch_name(struct repository *r, const char *str, int len, struct strbuf *buf, const struct interpret_branch_name_options *options); -#define interpret_branch_name(str, len, buf, options) \ - repo_interpret_branch_name(the_repository, str, len, buf, options) int validate_headref(const char *ref); @@ -1409,8 +1396,6 @@ void *read_object_with_reference(struct repository *r, struct object *repo_peel_to_type(struct repository *r, const char *name, int namelen, struct object *o, enum object_type); -#define peel_to_type(name, namelen, obj, type) \ - repo_peel_to_type(the_repository, name, namelen, obj, type) const char *git_editor(void); const char *git_sequence_editor(void); diff --git a/checkout.c b/checkout.c index 2e39dae684f..1247b882248 100644 --- a/checkout.c +++ b/checkout.c @@ -23,7 +23,7 @@ static int check_tracking_name(struct remote *remote, void *cb_data) memset(&query, 0, sizeof(struct refspec_item)); query.src = cb->src_ref; if (remote_find_tracking(remote, &query) || - get_oid(query.dst, cb->dst_oid)) { + repo_get_oid(the_repository, query.dst, cb->dst_oid)) { free(query.dst); return 0; } diff --git a/combine-diff.c b/combine-diff.c index 91051dc3258..e917362faf7 100644 --- a/combine-diff.c +++ b/combine-diff.c @@ -949,11 +949,11 @@ static void show_combined_header(struct combine_diff_path *elem, "", elem->path, line_prefix, c_meta, c_reset); printf("%s%sindex ", line_prefix, c_meta); for (i = 0; i < num_parent; i++) { - abb = find_unique_abbrev(&elem->parent[i].oid, - abbrev); + abb = repo_find_unique_abbrev(the_repository, + &elem->parent[i].oid, abbrev); printf("%s%s", i ? "," : "", abb); } - abb = find_unique_abbrev(&elem->oid, abbrev); + abb = repo_find_unique_abbrev(the_repository, &elem->oid, abbrev); printf("..%s%s\n", abb, c_reset); if (mode_differs) { diff --git a/commit.c b/commit.c index 7b63d3b0e1c..c0b1db3d3e1 100644 --- a/commit.c +++ b/commit.c @@ -81,7 +81,7 @@ struct commit *lookup_commit_reference_by_name(const char *name) struct object_id oid; struct commit *commit; - if (get_oid_committish(name, &oid)) + if (repo_get_oid_committish(the_repository, name, &oid)) return NULL; commit = lookup_commit_reference(the_repository, &oid); if (parse_commit(commit)) @@ -1274,7 +1274,8 @@ void verify_merge_signature(struct commit *commit, int verbosity, ret = check_commit_signature(commit, &signature_check); - find_unique_abbrev_r(hex, &commit->object.oid, DEFAULT_ABBREV); + repo_find_unique_abbrev_r(the_repository, hex, &commit->object.oid, + DEFAULT_ABBREV); switch (signature_check.result) { case 'G': if (ret || (check_trust && signature_check.trust_level < TRUST_MARGINAL)) @@ -1635,10 +1636,11 @@ struct commit *get_merge_parent(const char *name) struct object *obj; struct commit *commit; struct object_id oid; - if (get_oid(name, &oid)) + if (repo_get_oid(the_repository, name, &oid)) return NULL; obj = parse_object(the_repository, &oid); - commit = (struct commit *)peel_to_type(name, 0, obj, OBJ_COMMIT); + commit = (struct commit *)repo_peel_to_type(the_repository, name, 0, + obj, OBJ_COMMIT); if (commit && !merge_remote_util(commit)) set_merge_remote_desc(commit, name, obj); return commit; diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci new file mode 100644 index 00000000000..dcdba314fc2 --- /dev/null +++ b/contrib/coccinelle/the_repository.cocci @@ -0,0 +1,44 @@ +// Fully migrated "the_repository" additions +@@ +@@ +( +// cache.h +- get_oid ++ repo_get_oid +| +- get_oid_commit ++ repo_get_oid_commit +| +- get_oid_committish ++ repo_get_oid_committish +| +- get_oid_tree ++ repo_get_oid_tree +| +- get_oid_treeish ++ repo_get_oid_treeish +| +- get_oid_blob ++ repo_get_oid_blob +| +- get_oid_mb ++ repo_get_oid_mb +| +- find_unique_abbrev ++ repo_find_unique_abbrev +| +- find_unique_abbrev_r ++ repo_find_unique_abbrev_r +| +- for_each_abbrev ++ repo_for_each_abbrev +| +- interpret_branch_name ++ repo_interpret_branch_name +| +- peel_to_type ++ repo_peel_to_type +) + ( ++ the_repository, + ...) diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 8b3f2580e6b..2d200ab83e7 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,44 +5,7 @@ @@ @@ ( -// cache.h -- get_oid -+ repo_get_oid -| -- get_oid_commit -+ repo_get_oid_commit -| -- get_oid_committish -+ repo_get_oid_committish -| -- get_oid_tree -+ repo_get_oid_tree -| -- get_oid_treeish -+ repo_get_oid_treeish -| -- get_oid_blob -+ repo_get_oid_blob -| -- get_oid_mb -+ repo_get_oid_mb -| -- find_unique_abbrev -+ repo_find_unique_abbrev -| -- find_unique_abbrev_r -+ repo_find_unique_abbrev_r -| -- for_each_abbrev -+ repo_for_each_abbrev -| -- interpret_branch_name -+ repo_interpret_branch_name -| -- peel_to_type -+ repo_peel_to_type // commit-reach.h -| - get_merge_bases + repo_get_merge_bases | diff --git a/diff-lib.c b/diff-lib.c index 70b3578b907..628e13c8b03 100644 --- a/diff-lib.c +++ b/diff-lib.c @@ -582,7 +582,7 @@ void diff_get_merge_base(const struct rev_info *revs, struct object_id *mb) if (revs->pending.nr == 1) { struct object_id oid; - if (get_oid("HEAD", &oid)) + if (repo_get_oid(the_repository, "HEAD", &oid)) die(_("unable to get HEAD")); mb_child[1] = lookup_commit_reference(the_repository, &oid); diff --git a/diff.c b/diff.c index 1617aa50a98..81f115d32c9 100644 --- a/diff.c +++ b/diff.c @@ -4364,7 +4364,7 @@ static int similarity_index(struct diff_filepair *p) static const char *diff_abbrev_oid(const struct object_id *oid, int abbrev) { if (startup_info->have_repository) - return find_unique_abbrev(oid, abbrev); + return repo_find_unique_abbrev(the_repository, oid, abbrev); else { char *hex = oid_to_hex(oid); if (abbrev < 0) @@ -5000,7 +5000,7 @@ static int diff_opt_find_object(const struct option *option, struct object_id oid; BUG_ON_OPT_NEG(unset); - if (get_oid(arg, &oid)) + if (repo_get_oid(the_repository, arg, &oid)) return error(_("unable to resolve '%s'"), arg); if (!opt->objfind) diff --git a/fmt-merge-msg.c b/fmt-merge-msg.c index 24cc44bdbc9..bb56d957a64 100644 --- a/fmt-merge-msg.c +++ b/fmt-merge-msg.c @@ -603,7 +603,9 @@ static void find_merge_parents(struct merge_parents *result, * util field yet. */ obj = parse_object(the_repository, &oid); - parent = (struct commit *)peel_to_type(NULL, 0, obj, OBJ_COMMIT); + parent = (struct commit *)repo_peel_to_type(the_repository, + NULL, 0, obj, + OBJ_COMMIT); if (!parent) continue; commit_list_insert(parent, &parents); diff --git a/log-tree.c b/log-tree.c index 3adcb576e4c..49411c5c6a6 100644 --- a/log-tree.c +++ b/log-tree.c @@ -236,7 +236,8 @@ static void show_parents(struct commit *commit, int abbrev, FILE *file) struct commit_list *p; for (p = commit->parents; p ; p = p->next) { struct commit *parent = p->item; - fprintf(file, " %s", find_unique_abbrev(&parent->object.oid, abbrev)); + fprintf(file, " %s", + repo_find_unique_abbrev(the_repository, &parent->object.oid, abbrev)); } } @@ -244,7 +245,8 @@ static void show_children(struct rev_info *opt, struct commit *commit, int abbre { struct commit_list *p = lookup_decoration(&opt->children, &commit->object); for ( ; p; p = p->next) { - fprintf(opt->diffopt.file, " %s", find_unique_abbrev(&p->item->object.oid, abbrev)); + fprintf(opt->diffopt.file, " %s", + repo_find_unique_abbrev(the_repository, &p->item->object.oid, abbrev)); } } @@ -647,7 +649,8 @@ void show_log(struct rev_info *opt) if (!opt->graph) put_revision_mark(opt, commit); - fputs(find_unique_abbrev(&commit->object.oid, abbrev_commit), opt->diffopt.file); + fputs(repo_find_unique_abbrev(the_repository, &commit->object.oid, abbrev_commit), + opt->diffopt.file); if (opt->print_parents) show_parents(commit, abbrev_commit, opt->diffopt.file); if (opt->children.name) @@ -709,8 +712,8 @@ void show_log(struct rev_info *opt) if (!opt->graph) put_revision_mark(opt, commit); - fputs(find_unique_abbrev(&commit->object.oid, - abbrev_commit), + fputs(repo_find_unique_abbrev(the_repository, &commit->object.oid, + abbrev_commit), opt->diffopt.file); if (opt->print_parents) show_parents(commit, abbrev_commit, opt->diffopt.file); @@ -718,7 +721,7 @@ void show_log(struct rev_info *opt) show_children(opt, commit, abbrev_commit); if (parent) fprintf(opt->diffopt.file, " (from %s)", - find_unique_abbrev(&parent->object.oid, abbrev_commit)); + repo_find_unique_abbrev(the_repository, &parent->object.oid, abbrev_commit)); fputs(diff_get_color_opt(&opt->diffopt, DIFF_RESET), opt->diffopt.file); show_decorations(opt, commit); if (opt->commit_format == CMIT_FMT_ONELINE) { diff --git a/mailmap.c b/mailmap.c index da2589b0822..ed8289aea58 100644 --- a/mailmap.c +++ b/mailmap.c @@ -213,7 +213,7 @@ static int read_mailmap_blob(struct string_list *map, const char *name) if (!name) return 0; - if (get_oid(name, &oid) < 0) + if (repo_get_oid(the_repository, name, &oid) < 0) return 0; buf = read_object_file(&oid, &type, &size); diff --git a/notes-merge.c b/notes-merge.c index 5b1a9ff13f7..f9137ec768f 100644 --- a/notes-merge.c +++ b/notes-merge.c @@ -567,7 +567,7 @@ int notes_merge(struct notes_merge_options *o, trace_printf("\tlocal commit: %.7s\n", oid_to_hex(&local_oid)); /* Dereference o->remote_ref into remote_oid */ - if (get_oid(o->remote_ref, &remote_oid)) { + if (repo_get_oid(the_repository, o->remote_ref, &remote_oid)) { /* * Failed to get remote_oid. If o->remote_ref looks like an * unborn ref, perform the merge using an empty notes tree. diff --git a/notes.c b/notes.c index a7187236e98..427cfdac294 100644 --- a/notes.c +++ b/notes.c @@ -946,7 +946,7 @@ void string_list_add_refs_by_glob(struct string_list *list, const char *glob) for_each_glob_ref(string_list_add_one_ref, glob, list); } else { struct object_id oid; - if (get_oid(glob, &oid)) + if (repo_get_oid(the_repository, glob, &oid)) warning("notes ref %s is invalid", glob); if (!unsorted_string_list_has_string(list, glob)) string_list_append(list, glob); @@ -1023,7 +1023,7 @@ void init_notes(struct notes_tree *t, const char *notes_ref, t->dirty = 0; if (flags & NOTES_INIT_EMPTY || !notes_ref || - get_oid_treeish(notes_ref, &object_oid)) + repo_get_oid_treeish(the_repository, notes_ref, &object_oid)) return; if (flags & NOTES_INIT_WRITABLE && read_ref(notes_ref, &object_oid)) die("Cannot use notes ref %s", notes_ref); @@ -1350,7 +1350,7 @@ void expand_loose_notes_ref(struct strbuf *sb) { struct object_id object; - if (get_oid(sb->buf, &object)) { + if (repo_get_oid(the_repository, sb->buf, &object)) { /* fallback to expand_notes_ref */ expand_notes_ref(sb); } diff --git a/object-name.c b/object-name.c index 69db1ec498a..19ba23216a5 100644 --- a/object-name.c +++ b/object-name.c @@ -1667,7 +1667,8 @@ void strbuf_branchname(struct strbuf *sb, const char *name, unsigned allowed) struct interpret_branch_name_options options = { .allowed = allowed }; - int used = interpret_branch_name(name, len, sb, &options); + int used = repo_interpret_branch_name(the_repository, name, len, sb, + &options); if (used < 0) used = 0; @@ -1720,7 +1721,7 @@ int get_oidf(struct object_id *oid, const char *fmt, ...) strbuf_vaddf(&sb, fmt, ap); va_end(ap); - ret = get_oid(sb.buf, oid); + ret = repo_get_oid(the_repository, sb.buf, oid); strbuf_release(&sb); return ret; diff --git a/parse-options-cb.c b/parse-options-cb.c index d346dbe2100..0f7b40d0c08 100644 --- a/parse-options-cb.c +++ b/parse-options-cb.c @@ -91,7 +91,7 @@ int parse_opt_commits(const struct option *opt, const char *arg, int unset) if (!arg) return -1; - if (get_oid(arg, &oid)) + if (repo_get_oid(the_repository, arg, &oid)) return error("malformed object name %s", arg); commit = lookup_commit_reference(the_repository, &oid); if (!commit) @@ -110,7 +110,7 @@ int parse_opt_commit(const struct option *opt, const char *arg, int unset) if (!arg) return -1; - if (get_oid(arg, &oid)) + if (repo_get_oid(the_repository, arg, &oid)) return error("malformed object name %s", arg); commit = lookup_commit_reference(the_repository, &oid); if (!commit) @@ -129,7 +129,7 @@ int parse_opt_object_name(const struct option *opt, const char *arg, int unset) } if (!arg) return -1; - if (get_oid(arg, &oid)) + if (repo_get_oid(the_repository, arg, &oid)) return error(_("malformed object name '%s'"), arg); oid_array_append(opt->value, &oid); return 0; @@ -146,7 +146,7 @@ int parse_opt_object_id(const struct option *opt, const char *arg, int unset) } if (!arg) return -1; - if (get_oid(arg, &oid)) + if (repo_get_oid(the_repository, arg, &oid)) return error(_("malformed object name '%s'"), arg); *target = oid; return 0; diff --git a/range-diff.c b/range-diff.c index 4bd65ab7496..5bcf966f6c5 100644 --- a/range-diff.c +++ b/range-diff.c @@ -94,7 +94,7 @@ static int read_patches(const char *range, struct string_list *list, strbuf_reset(&buf); } CALLOC_ARRAY(util, 1); - if (get_oid(p, &util->oid)) { + if (repo_get_oid(the_repository, p, &util->oid)) { error(_("could not parse commit '%s'"), p); FREE_AND_NULL(util); string_list_clear(list, 1); @@ -390,7 +390,7 @@ static void output_pair_header(struct diff_options *diffopt, if (!dashes->len) strbuf_addchars(dashes, '-', - strlen(find_unique_abbrev(oid, abbrev))); + strlen(repo_find_unique_abbrev(the_repository, oid, abbrev))); if (!b_util) { color = color_old; @@ -412,7 +412,7 @@ static void output_pair_header(struct diff_options *diffopt, strbuf_addf(buf, "%*s: %s ", patch_no_width, "-", dashes->buf); else strbuf_addf(buf, "%*d: %s ", patch_no_width, a_util->i + 1, - find_unique_abbrev(&a_util->oid, abbrev)); + repo_find_unique_abbrev(the_repository, &a_util->oid, abbrev)); if (status == '!') strbuf_addf(buf, "%s%s", color_reset, color); @@ -424,7 +424,7 @@ static void output_pair_header(struct diff_options *diffopt, strbuf_addf(buf, " %*s: %s", patch_no_width, "-", dashes->buf); else strbuf_addf(buf, " %*d: %s", patch_no_width, b_util->i + 1, - find_unique_abbrev(&b_util->oid, abbrev)); + repo_find_unique_abbrev(the_repository, &b_util->oid, abbrev)); commit = lookup_commit_reference(the_repository, oid); if (commit) { diff --git a/read-cache.c b/read-cache.c index 1bcf6732718..c1d47b9fc83 100644 --- a/read-cache.c +++ b/read-cache.c @@ -2630,7 +2630,7 @@ int repo_index_has_changes(struct repository *repo, if (tree) cmp = tree->object.oid; - if (tree || !get_oid_tree("HEAD", &cmp)) { + if (tree || !repo_get_oid_tree(the_repository, "HEAD", &cmp)) { struct diff_options opt; repo_diff_setup(repo, &opt); diff --git a/rebase-interactive.c b/rebase-interactive.c index 7407c593191..c151db0ad2f 100644 --- a/rebase-interactive.c +++ b/rebase-interactive.c @@ -187,7 +187,7 @@ int todo_list_check(struct todo_list *old_todo, struct todo_list *new_todo) struct commit *commit = item->commit; if (commit && !*commit_seen_at(&commit_seen, commit)) { strbuf_addf(&missing, " - %s %.*s\n", - find_unique_abbrev(&commit->object.oid, DEFAULT_ABBREV), + repo_find_unique_abbrev(the_repository, &commit->object.oid, DEFAULT_ABBREV), item->arg_len, todo_item_get_arg(old_todo, item)); *commit_seen_at(&commit_seen, commit) = 1; diff --git a/ref-filter.c b/ref-filter.c index ed802778da7..4982841b3da 100644 --- a/ref-filter.c +++ b/ref-filter.c @@ -1093,9 +1093,11 @@ static const char *do_grab_oid(const char *field, const struct object_id *oid, case O_FULL: return oid_to_hex(oid); case O_LENGTH: - return find_unique_abbrev(oid, atom->u.oid.length); + return repo_find_unique_abbrev(the_repository, oid, + atom->u.oid.length); case O_SHORT: - return find_unique_abbrev(oid, DEFAULT_ABBREV); + return repo_find_unique_abbrev(the_repository, oid, + DEFAULT_ABBREV); default: BUG("unknown %%(%s) option", field); } @@ -2783,7 +2785,7 @@ int parse_opt_merge_filter(const struct option *opt, const char *arg, int unset) BUG_ON_OPT_NEG(unset); - if (get_oid(arg, &oid)) + if (repo_get_oid(the_repository, arg, &oid)) die(_("malformed object name %s"), arg); merge_commit = lookup_commit_reference_gently(the_repository, &oid, 0); diff --git a/remote.c b/remote.c index b04e5da3383..a0f22c8751e 100644 --- a/remote.c +++ b/remote.c @@ -1165,7 +1165,7 @@ static int try_explicit_object_name(const char *name, return 0; } - if (get_oid(name, &oid)) + if (repo_get_oid(the_repository, name, &oid)) return -1; if (match) { @@ -1253,7 +1253,7 @@ static void show_push_unqualified_ref_name_error(const char *dst_value, if (!advice_enabled(ADVICE_PUSH_UNQUALIFIED_REF_NAME)) return; - if (get_oid(matched_src_name, &oid)) + if (repo_get_oid(the_repository, matched_src_name, &oid)) BUG("'%s' is not a valid object, " "match_explicit_lhs() should catch this!", matched_src_name); @@ -2507,7 +2507,7 @@ static int parse_push_cas_option(struct push_cas_option *cas, const char *arg, i entry->use_tracking = 1; else if (!colon[1]) oidclr(&entry->expect); - else if (get_oid(colon + 1, &entry->expect)) + else if (repo_get_oid(the_repository, colon + 1, &entry->expect)) return error(_("cannot parse expected object name '%s'"), colon + 1); return 0; diff --git a/reset.c b/reset.c index 58b3829ff73..8c471e22d99 100644 --- a/reset.c +++ b/reset.c @@ -39,7 +39,7 @@ static int update_refs(const struct reset_head_opts *opts, prefix_len = msg.len; if (update_orig_head) { - if (!get_oid("ORIG_HEAD", &oid_old_orig)) + if (!repo_get_oid(the_repository, "ORIG_HEAD", &oid_old_orig)) old_orig = &oid_old_orig; if (head) { if (!reflog_orig_head) { @@ -107,7 +107,7 @@ int reset_head(struct repository *r, const struct reset_head_opts *opts) goto leave_reset_head; } - if (!get_oid("HEAD", &head_oid)) { + if (!repo_get_oid(the_repository, "HEAD", &head_oid)) { head = &head_oid; } else if (!oid || !reset_hard) { ret = error(_("could not determine HEAD revision")); diff --git a/revision.c b/revision.c index e4c066e90b7..e08f697c47c 100644 --- a/revision.c +++ b/revision.c @@ -326,7 +326,8 @@ static void add_pending_object_with_path(struct rev_info *revs, if (revs->reflog_info && obj->type == OBJ_COMMIT) { struct strbuf buf = STRBUF_INIT; size_t namelen = strlen(name); - int len = interpret_branch_name(name, namelen, &buf, &options); + int len = repo_interpret_branch_name(the_repository, name, + namelen, &buf, &options); if (0 < len && len < namelen && buf.len) strbuf_addstr(&buf, name + len); @@ -356,7 +357,7 @@ void add_head_to_pending(struct rev_info *revs) { struct object_id oid; struct object *obj; - if (get_oid("HEAD", &oid)) + if (repo_get_oid(the_repository, "HEAD", &oid)) return; obj = parse_object(revs->repo, &oid); if (!obj) @@ -1870,7 +1871,7 @@ static int add_parents_only(struct rev_info *revs, const char *arg_, int flags, flags ^= UNINTERESTING | BOTTOM; arg++; } - if (get_oid_committish(arg, &oid)) + if (repo_get_oid_committish(the_repository, arg, &oid)) return 0; while (1) { it = get_reference(revs, arg, &oid, 0); @@ -1951,10 +1952,10 @@ static void prepare_show_merge(struct rev_info *revs) int i, prune_num = 1; /* counting terminating NULL */ struct index_state *istate = revs->repo->index; - if (get_oid("HEAD", &oid)) + if (repo_get_oid(the_repository, "HEAD", &oid)) die("--merge without HEAD?"); head = lookup_commit_or_die(&oid, "HEAD"); - if (get_oid("MERGE_HEAD", &oid)) + if (repo_get_oid(the_repository, "MERGE_HEAD", &oid)) die("--merge without MERGE_HEAD?"); other = lookup_commit_or_die(&oid, "MERGE_HEAD"); add_pending_object(revs, &head->object, "HEAD"); diff --git a/sequencer.c b/sequencer.c index 3be23d7ca20..d73827632d8 100644 --- a/sequencer.c +++ b/sequencer.c @@ -417,7 +417,8 @@ struct commit_message { static const char *short_commit_name(struct commit *commit) { - return find_unique_abbrev(&commit->object.oid, DEFAULT_ABBREV); + return repo_find_unique_abbrev(the_repository, &commit->object.oid, + DEFAULT_ABBREV); } static int get_message(struct commit *commit, struct commit_message *out) @@ -559,7 +560,7 @@ static void update_abort_safety_file(void) if (!file_exists(git_path_seq_dir())) return; - if (!get_oid("HEAD", &head)) + if (!repo_get_oid(the_repository, "HEAD", &head)) write_file(git_path_abort_safety_file(), "%s", oid_to_hex(&head)); else write_file(git_path_abort_safety_file(), "%s", ""); @@ -1404,7 +1405,7 @@ static int parse_head(struct repository *r, struct commit **head) struct commit *current_head; struct object_id oid; - if (get_oid("HEAD", &oid)) { + if (repo_get_oid(the_repository, "HEAD", &oid)) { current_head = NULL; } else { current_head = lookup_commit_reference(r, &oid); @@ -1995,7 +1996,7 @@ static int update_squash_messages(struct repository *r, struct commit *head_commit; const char *head_message, *body; - if (get_oid("HEAD", &head)) + if (repo_get_oid(the_repository, "HEAD", &head)) return error(_("need a HEAD to fixup")); if (!(head_commit = lookup_commit_reference(r, &head))) return error(_("could not read HEAD")); @@ -2065,7 +2066,7 @@ static void flush_rewritten_pending(void) FILE *out; if (strbuf_read_file(&buf, rebase_path_rewritten_pending(), (GIT_MAX_HEXSZ + 1) * 2) > 0 && - !get_oid("HEAD", &newoid) && + !repo_get_oid(the_repository, "HEAD", &newoid) && (out = fopen_or_warn(rebase_path_rewritten_list(), "a"))) { char *bol = buf.buf, *eol; @@ -2150,7 +2151,7 @@ static int do_pick_commit(struct repository *r, if (write_index_as_tree(&head, r->index, r->index_file, 0, NULL)) return error(_("your index file is unmerged.")); } else { - unborn = get_oid("HEAD", &head); + unborn = repo_get_oid(the_repository, "HEAD", &head); /* Do we want to generate a root commit? */ if (is_pick_or_similar(command) && opts->have_squash_onto && oideq(&head, &opts->squash_onto)) { @@ -2604,7 +2605,7 @@ static int parse_insn_line(struct repository *r, struct todo_item *item, end_of_object_name = (char *) bol + strcspn(bol, " \t\n"); saved = *end_of_object_name; *end_of_object_name = '\0'; - status = get_oid(bol, &commit_oid); + status = repo_get_oid(the_repository, bol, &commit_oid); if (status < 0) error(_("could not parse '%s'"), bol); /* return later */ *end_of_object_name = saved; @@ -3025,7 +3026,7 @@ static int read_populate_opts(struct replay_opts *opts) } if (read_oneliner(&buf, rebase_path_squash_onto(), 0)) { - if (get_oid_committish(buf.buf, &opts->squash_onto) < 0) { + if (repo_get_oid_committish(the_repository, buf.buf, &opts->squash_onto) < 0) { ret = error(_("unusable squash-onto")); goto done_rebase_i; } @@ -3226,7 +3227,7 @@ static int rollback_is_safe(void) else die_errno(_("could not read '%s'"), git_path_abort_safety_file()); - if (get_oid("HEAD", &actual_head)) + if (repo_get_oid(the_repository, "HEAD", &actual_head)) oidclr(&actual_head); return oideq(&actual_head, &expected_head); @@ -3537,7 +3538,7 @@ static int intend_to_amend(void) struct object_id head; char *p; - if (get_oid("HEAD", &head)) + if (repo_get_oid(the_repository, "HEAD", &head)) return error(_("cannot read HEAD")); p = oid_to_hex(&head); @@ -3703,7 +3704,7 @@ static int do_label(struct repository *r, const char *name, int len) if (!transaction) { error("%s", err.buf); ret = -1; - } else if (get_oid("HEAD", &head_oid)) { + } else if (repo_get_oid(the_repository, "HEAD", &head_oid)) { error(_("could not read HEAD")); ret = -1; } else if (ref_transaction_update(transaction, ref_name.buf, &head_oid, @@ -4459,7 +4460,7 @@ void create_autostash(struct repository *r, const char *path) if (capture_command(&stash, &buf, GIT_MAX_HEXSZ)) die(_("Cannot autostash")); strbuf_trim_trailing_newline(&buf); - if (get_oid(buf.buf, &oid)) + if (repo_get_oid(the_repository, buf.buf, &oid)) die(_("Unexpected stash response: '%s'"), buf.buf); strbuf_reset(&buf); @@ -4584,7 +4585,7 @@ static int stopped_at_head(struct repository *r) struct commit *commit; struct commit_message message; - if (get_oid("HEAD", &head) || + if (repo_get_oid(the_repository, "HEAD", &head) || !(commit = lookup_commit(r, &head)) || parse_commit(commit) || get_message(commit, &message)) fprintf(stderr, _("Stopped at HEAD\n")); @@ -4734,7 +4735,7 @@ static int pick_commits(struct repository *r, * otherwise we do not. */ if (item->command == TODO_REWORD && - !get_oid("HEAD", &oid) && + !repo_get_oid(the_repository, "HEAD", &oid) && (oideq(&item->commit->object.oid, &oid) || (opts->have_squash_onto && oideq(&opts->squash_onto, &oid)))) @@ -4823,7 +4824,7 @@ static int pick_commits(struct repository *r, struct object_id head, orig; int res; - if (get_oid("HEAD", &head)) { + if (repo_get_oid(the_repository, "HEAD", &head)) { res = error(_("cannot read HEAD")); cleanup_head_ref: strbuf_release(&head_ref); @@ -4870,8 +4871,8 @@ static int pick_commits(struct repository *r, log_tree_opt.disable_stdin = 1; if (read_oneliner(&buf, rebase_path_orig_head(), 0) && - !get_oid(buf.buf, &orig) && - !get_oid("HEAD", &head)) { + !repo_get_oid(the_repository, buf.buf, &orig) && + !repo_get_oid(the_repository, "HEAD", &head)) { diff_tree_oid(&orig, &head, "", &log_tree_opt.diffopt); log_tree_diff_flush(&log_tree_opt); @@ -4963,7 +4964,7 @@ static int commit_staged_changes(struct repository *r, struct strbuf rev = STRBUF_INIT; struct object_id head, to_amend; - if (get_oid("HEAD", &head)) + if (repo_get_oid(the_repository, "HEAD", &head)) return error(_("cannot amend non-existing commit")); if (!read_oneliner(&rev, rebase_path_amend(), 0)) return error(_("invalid file: '%s'"), rebase_path_amend()); @@ -5188,7 +5189,7 @@ int sequencer_pick_revisions(struct repository *r, if (!strlen(name)) continue; - if (!get_oid(name, &oid)) { + if (!repo_get_oid(the_repository, name, &oid)) { if (!lookup_commit_reference_gently(r, &oid, 1)) { enum object_type type = oid_object_info(r, &oid, @@ -5231,7 +5232,7 @@ int sequencer_pick_revisions(struct repository *r, if (walk_revs_populate_todo(&todo_list, opts) || create_seq_dir(r) < 0) return -1; - if (get_oid("HEAD", &oid) && (opts->action == REPLAY_REVERT)) + if (repo_get_oid(the_repository, "HEAD", &oid) && (opts->action == REPLAY_REVERT)) return error(_("can't revert as initial commit")); if (save_head(oid_to_hex(&oid))) return -1; @@ -5363,7 +5364,8 @@ static const char *label_oid(struct object_id *oid, const char *label, strbuf_grow(&state->buf, GIT_MAX_HEXSZ); label = p = state->buf.buf; - find_unique_abbrev_r(p, oid, default_abbrev); + repo_find_unique_abbrev_r(the_repository, p, oid, + default_abbrev); /* * We may need to extend the abbreviated hash so that there is @@ -6096,7 +6098,8 @@ int complete_action(struct repository *r, struct replay_opts *opts, unsigned fla struct object_id oid = onto->object.oid; int res; - find_unique_abbrev_r(shortonto, &oid, DEFAULT_ABBREV); + repo_find_unique_abbrev_r(the_repository, shortonto, &oid, + DEFAULT_ABBREV); if (buf->len == 0) { struct todo_item *item = append_new_todo(todo_list); @@ -6372,8 +6375,8 @@ int sequencer_determine_whence(struct repository *r, enum commit_whence *whence) if (file_exists(git_path_seq_dir())) *whence = FROM_CHERRY_PICK_MULTI; if (file_exists(rebase_path()) && - !get_oid("REBASE_HEAD", &rebase_head) && - !get_oid("CHERRY_PICK_HEAD", &cherry_pick_head) && + !repo_get_oid(the_repository, "REBASE_HEAD", &rebase_head) && + !repo_get_oid(the_repository, "CHERRY_PICK_HEAD", &cherry_pick_head) && oideq(&rebase_head, &cherry_pick_head)) *whence = FROM_REBASE_PICK; else diff --git a/submodule-config.c b/submodule-config.c index 89a7bf0a93d..57972c3e131 100644 --- a/submodule-config.c +++ b/submodule-config.c @@ -537,7 +537,7 @@ static int gitmodule_oid_from_commit(const struct object_id *treeish_name, } strbuf_addf(rev, "%s:.gitmodules", oid_to_hex(treeish_name)); - if (get_oid(rev->buf, gitmodules_oid) >= 0) + if (repo_get_oid(the_repository, rev->buf, gitmodules_oid) >= 0) ret = 1; return ret; diff --git a/submodule.c b/submodule.c index 2a057c35b74..f028044e2dc 100644 --- a/submodule.c +++ b/submodule.c @@ -66,7 +66,7 @@ int is_writing_gitmodules_ok(void) { struct object_id oid; return file_exists(GITMODULES_FILE) || - (get_oid(GITMODULES_INDEX, &oid) < 0 && get_oid(GITMODULES_HEAD, &oid) < 0); + (repo_get_oid(the_repository, GITMODULES_INDEX, &oid) < 0 && repo_get_oid(the_repository, GITMODULES_HEAD, &oid) < 0); } /* @@ -1626,7 +1626,7 @@ get_fetch_task_from_changed(struct submodule_parallel_fetch *spf, if (!task->repo) { strbuf_addf(err, _("Could not access submodule '%s' at commit %s\n"), cs_data->path, - find_unique_abbrev(cs_data->super_oid, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, cs_data->super_oid, DEFAULT_ABBREV)); fetch_task_release(task); free(task); @@ -1637,8 +1637,8 @@ get_fetch_task_from_changed(struct submodule_parallel_fetch *spf, strbuf_addf(err, _("Fetching submodule %s%s at commit %s\n"), spf->prefix, task->sub->path, - find_unique_abbrev(cs_data->super_oid, - DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, cs_data->super_oid, + DEFAULT_ABBREV)); spf->changed_count++; /* diff --git a/t/helper/test-fast-rebase.c b/t/helper/test-fast-rebase.c index b1edb92a032..3f8d5761780 100644 --- a/t/helper/test-fast-rebase.c +++ b/t/helper/test-fast-rebase.c @@ -26,7 +26,8 @@ static const char *short_commit_name(struct commit *commit) { - return find_unique_abbrev(&commit->object.oid, DEFAULT_ABBREV); + return repo_find_unique_abbrev(the_repository, &commit->object.oid, + DEFAULT_ABBREV); } static struct commit *peel_committish(const char *name) @@ -34,10 +35,11 @@ static struct commit *peel_committish(const char *name) struct object *obj; struct object_id oid; - if (get_oid(name, &oid)) + if (repo_get_oid(the_repository, name, &oid)) return NULL; obj = parse_object(the_repository, &oid); - return (struct commit *)peel_to_type(name, 0, obj, OBJ_COMMIT); + return (struct commit *)repo_peel_to_type(the_repository, name, 0, obj, + OBJ_COMMIT); } static char *get_author(const char *message) @@ -120,7 +122,7 @@ int cmd__fast_rebase(int argc, const char **argv) strbuf_addf(&branch_name, "refs/heads/%s", argv[4]); /* Sanity check */ - if (get_oid("HEAD", &head)) + if (repo_get_oid(the_repository, "HEAD", &head)) die(_("Cannot read HEAD")); assert(oideq(&onto->object.oid, &head)); diff --git a/t/helper/test-match-trees.c b/t/helper/test-match-trees.c index 04bc2563f3e..f2ae92ca2c8 100644 --- a/t/helper/test-match-trees.c +++ b/t/helper/test-match-trees.c @@ -10,9 +10,9 @@ int cmd__match_trees(int ac, const char **av) setup_git_directory(); - if (get_oid(av[1], &hash1)) + if (repo_get_oid(the_repository, av[1], &hash1)) die("cannot parse %s as an object name", av[1]); - if (get_oid(av[2], &hash2)) + if (repo_get_oid(the_repository, av[2], &hash2)) die("cannot parse %s as an object name", av[2]); one = parse_tree_indirect(&hash1); if (!one) diff --git a/t/helper/test-oidmap.c b/t/helper/test-oidmap.c index 883d40efd45..8c9b6e7f695 100644 --- a/t/helper/test-oidmap.c +++ b/t/helper/test-oidmap.c @@ -50,7 +50,7 @@ int cmd__oidmap(int argc, const char **argv) if (!strcmp("put", cmd) && p1 && p2) { - if (get_oid(p1, &oid)) { + if (repo_get_oid(the_repository, p1, &oid)) { printf("Unknown oid: %s\n", p1); continue; } @@ -68,7 +68,7 @@ int cmd__oidmap(int argc, const char **argv) } else if (!strcmp("get", cmd) && p1) { - if (get_oid(p1, &oid)) { + if (repo_get_oid(the_repository, p1, &oid)) { printf("Unknown oid: %s\n", p1); continue; } @@ -81,7 +81,7 @@ int cmd__oidmap(int argc, const char **argv) } else if (!strcmp("remove", cmd) && p1) { - if (get_oid(p1, &oid)) { + if (repo_get_oid(the_repository, p1, &oid)) { printf("Unknown oid: %s\n", p1); continue; } diff --git a/t/helper/test-reach.c b/t/helper/test-reach.c index de8f26639d4..afb9bb3189f 100644 --- a/t/helper/test-reach.c +++ b/t/helper/test-reach.c @@ -58,7 +58,7 @@ int cmd__reach(int ac, const char **av) if (buf.len < 3) continue; - if (get_oid_committish(buf.buf + 2, &oid)) + if (repo_get_oid_committish(the_repository, buf.buf + 2, &oid)) die("failed to resolve %s", buf.buf + 2); orig = parse_object(r, &oid); diff --git a/t/helper/test-submodule-config.c b/t/helper/test-submodule-config.c index 22a41c40926..91c82d4159d 100644 --- a/t/helper/test-submodule-config.c +++ b/t/helper/test-submodule-config.c @@ -42,7 +42,7 @@ int cmd__submodule_config(int argc, const char **argv) if (commit[0] == '\0') oidclr(&commit_oid); - else if (get_oid(commit, &commit_oid) < 0) + else if (repo_get_oid(the_repository, commit, &commit_oid) < 0) die_usage(argc, argv, "Commit not found."); if (lookup_name) { diff --git a/tag.c b/tag.c index 18b718cca66..85c348ad824 100644 --- a/tag.c +++ b/tag.c @@ -52,7 +52,7 @@ int gpg_verify_tag(const struct object_id *oid, const char *name_to_report, return error("%s: cannot verify a non-tag object of type %s.", name_to_report ? name_to_report : - find_unique_abbrev(oid, DEFAULT_ABBREV), + repo_find_unique_abbrev(the_repository, oid, DEFAULT_ABBREV), type_name(type)); buf = read_object_file(oid, &type, &size); @@ -60,7 +60,7 @@ int gpg_verify_tag(const struct object_id *oid, const char *name_to_report, return error("%s: unable to read file.", name_to_report ? name_to_report : - find_unique_abbrev(oid, DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, oid, DEFAULT_ABBREV)); ret = run_gpg_verify(buf, size, flags); diff --git a/transport-helper.c b/transport-helper.c index 82ac63e2609..1939763ab5d 100644 --- a/transport-helper.c +++ b/transport-helper.c @@ -1082,7 +1082,7 @@ static int push_refs_with_export(struct transport *transport, struct object_id oid; private = apply_refspecs(&data->rs, ref->name); - if (private && !get_oid(private, &oid)) { + if (private && !repo_get_oid(the_repository, private, &oid)) { strbuf_addf(&buf, "^%s", private); string_list_append_nodup(&revlist_args, strbuf_detach(&buf, NULL)); diff --git a/transport.c b/transport.c index 906dbad5a08..dbbfeb8d010 100644 --- a/transport.c +++ b/transport.c @@ -779,7 +779,8 @@ static int print_one_push_status(struct ref *ref, const char *dest, int count, static int measure_abbrev(const struct object_id *oid, int sofar) { char hex[GIT_MAX_HEXSZ + 1]; - int w = find_unique_abbrev_r(hex, oid, DEFAULT_ABBREV); + int w = repo_find_unique_abbrev_r(the_repository, hex, oid, + DEFAULT_ABBREV); return (w < sofar) ? sofar : w; } diff --git a/wt-status.c b/wt-status.c index 90525bd26fd..0f0b92eece4 100644 --- a/wt-status.c +++ b/wt-status.c @@ -1338,7 +1338,7 @@ static void abbrev_oid_in_line(struct strbuf *line) * it after abbreviation. */ strbuf_trim(split[1]); - if (!get_oid(split[1]->buf, &oid)) { + if (!repo_get_oid(the_repository, split[1]->buf, &oid)) { strbuf_reset(split[1]); strbuf_add_unique_abbrev(split[1], &oid, DEFAULT_ABBREV); @@ -1504,8 +1504,8 @@ static void show_cherry_pick_in_progress(struct wt_status *s, else status_printf_ln(s, color, _("You are currently cherry-picking commit %s."), - find_unique_abbrev(&s->state.cherry_pick_head_oid, - DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &s->state.cherry_pick_head_oid, + DEFAULT_ABBREV)); if (s->hints) { if (has_unmerged(s)) @@ -1534,8 +1534,8 @@ static void show_revert_in_progress(struct wt_status *s, else status_printf_ln(s, color, _("You are currently reverting commit %s."), - find_unique_abbrev(&s->state.revert_head_oid, - DEFAULT_ABBREV)); + repo_find_unique_abbrev(the_repository, &s->state.revert_head_oid, + DEFAULT_ABBREV)); if (s->hints) { if (has_unmerged(s)) status_printf_ln(s, color, @@ -1677,9 +1677,9 @@ static void wt_status_get_detached_from(struct repository *r, state->detached_from = xstrdup(from); } else state->detached_from = - xstrdup(find_unique_abbrev(&cb.noid, DEFAULT_ABBREV)); + xstrdup(repo_find_unique_abbrev(the_repository, &cb.noid, DEFAULT_ABBREV)); oidcpy(&state->detached_oid, &cb.noid); - state->detached_at = !get_oid("HEAD", &oid) && + state->detached_at = !repo_get_oid(the_repository, "HEAD", &oid) && oideq(&oid, &state->detached_oid); free(ref); @@ -1770,13 +1770,13 @@ void wt_status_get_state(struct repository *r, } else if (wt_status_check_rebase(NULL, state)) { ; /* all set */ } else if (refs_ref_exists(get_main_ref_store(r), "CHERRY_PICK_HEAD") && - !get_oid("CHERRY_PICK_HEAD", &oid)) { + !repo_get_oid(the_repository, "CHERRY_PICK_HEAD", &oid)) { state->cherry_pick_in_progress = 1; oidcpy(&state->cherry_pick_head_oid, &oid); } wt_status_check_bisect(NULL, state); if (refs_ref_exists(get_main_ref_store(r), "REVERT_HEAD") && - !get_oid("REVERT_HEAD", &oid)) { + !repo_get_oid(the_repository, "REVERT_HEAD", &oid)) { state->revert_in_progress = 1; oidcpy(&state->revert_head_oid, &oid); } From patchwork Tue Mar 28 13:58:47 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191111 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A154DC77B61 for ; Tue, 28 Mar 2023 13:59:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232974AbjC1N7c (ORCPT ); Tue, 28 Mar 2023 09:59:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38884 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232911AbjC1N7T (ORCPT ); Tue, 28 Mar 2023 09:59:19 -0400 Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com [IPv6:2a00:1450:4864:20::32c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D9C9FA276 for ; Tue, 28 Mar 2023 06:59:16 -0700 (PDT) Received: by mail-wm1-x32c.google.com with SMTP id n10-20020a05600c4f8a00b003ee93d2c914so9154308wmq.2 for ; Tue, 28 Mar 2023 06:59:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011955; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=az5LTQe657GsJFkemNirmpCdecOxpT/jBrqiUwjpVJU=; b=VL0rnmjIfsNxz3TrHHKgLpa8i2W9Bb5vBbib8A8Ekax0XNwDbIFUmh56LLOk0Cr/lL Y0zRY+Aq0uaSy/6R4B9NwO2Y7B1OmobC96KIIJRSaof0Td0DA99pWy2gprHMilTKf5i8 hh5Hyroae8TQ8jM6JdAGFRqr6uepk6pfIVeSjZSeEOVsBN7+HTLHF4KP8Awp9NFAVlRB Y+jqBq/ICMCY+7c4gRMAS0qPAx2sRKw/t4+lpzzA5w2W5jajpBP7onPIj4QvImlWIKqL 9CU+SNOeyF5iVXuNntXkV4+kpff38KYCDRmTQoSGvAdpWoc8g7bbQIlLMivsZt1BE1Mm kWfw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011955; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=az5LTQe657GsJFkemNirmpCdecOxpT/jBrqiUwjpVJU=; b=CRAqM530+CJ/aXdTq7Ou4sm1tqHFGzcFY6yn1qWhAyhkYUanbAMUWcY521KgWqlGE3 JRMG9EObPQCAkfgPlFhYmWrxBgTlIuM/EShlJTq0optOtz68+JTh/9EDwFzunnNM9RlS BwuvjtAOFZ5vmVnytEzXQyCVo/S0vBiueHqMwtQ93NeEj/h3ichkAGolyQS4dUSQrEcb HyzO/D9/dH4PrHQU2j3sBV7mBILEDhhjYFrEW2tojTNu/s4Cb6iB0pT4B/jxYaITrNkG L6thegHqUMkbvX4GeRcvD6nem1cBUsdFoZzeSEGG4KFKZIpEJx0x3TNs6Dct6WumyjQt t6Mg== X-Gm-Message-State: AO0yUKWmIBB1P7jjM1nfoOy5u4bMuQSXiEx24GZMwkYF9lrGbBLJgGM6 x6dz+YOemMJ1/N+f+sNAb9d5MOT6We4QMw== X-Google-Smtp-Source: AK7set8HDA7asWq8MrIE68VuOGUTB7rLD5p/3AtEQebn0yP/1qYMJJUYNQtWKLHYReUEMQ7oYQYNXQ== X-Received: by 2002:a1c:790b:0:b0:3ee:56f7:75d2 with SMTP id l11-20020a1c790b000000b003ee56f775d2mr12386930wme.20.1680011954642; Tue, 28 Mar 2023 06:59:14 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:14 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 06/17] cocci: apply the "commit-reach.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:47 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "commit-reach.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- bisect.c | 3 ++- builtin/branch.c | 5 +++-- builtin/fast-import.c | 2 +- builtin/fetch.c | 3 ++- builtin/log.c | 10 +++++++--- builtin/merge-base.c | 5 +++-- builtin/merge-tree.c | 3 ++- builtin/merge.c | 7 +++++-- builtin/rebase.c | 5 +++-- builtin/receive-pack.c | 2 +- builtin/rev-parse.c | 2 +- commit-reach.c | 3 ++- commit-reach.h | 9 --------- commit.c | 3 ++- contrib/coccinelle/the_repository.cocci | 16 ++++++++++++++++ contrib/coccinelle/the_repository.pending.cocci | 16 ---------------- http-push.c | 2 +- log-tree.c | 2 +- merge-ort.c | 2 +- merge-recursive.c | 2 +- notes-merge.c | 2 +- remote.c | 2 +- revision.c | 4 ++-- sequencer.c | 3 ++- shallow.c | 9 +++++---- t/helper/test-reach.c | 10 +++++++--- 26 files changed, 72 insertions(+), 60 deletions(-) diff --git a/bisect.c b/bisect.c index 1409150c5c3..b1639a9de7f 100644 --- a/bisect.c +++ b/bisect.c @@ -847,7 +847,8 @@ static enum bisect_error check_merge_bases(int rev_nr, struct commit **rev, int enum bisect_error res = BISECT_OK; struct commit_list *result; - result = get_merge_bases_many(rev[0], rev_nr - 1, rev + 1); + result = repo_get_merge_bases_many(the_repository, rev[0], rev_nr - 1, + rev + 1); for (; result; result = result->next) { const struct object_id *mb = &result->item->object.oid; diff --git a/builtin/branch.c b/builtin/branch.c index 968ea03c059..bbcfb34b3c6 100644 --- a/builtin/branch.c +++ b/builtin/branch.c @@ -150,7 +150,8 @@ static int branch_merged(int kind, const char *name, if (!reference_rev) reference_rev = head_rev; - merged = reference_rev ? in_merge_bases(rev, reference_rev) : 0; + merged = reference_rev ? repo_in_merge_bases(the_repository, rev, + reference_rev) : 0; /* * After the safety valve is fully redefined to "check with @@ -160,7 +161,7 @@ static int branch_merged(int kind, const char *name, * a gentle reminder is in order. */ if ((head_rev != reference_rev) && - (head_rev ? in_merge_bases(rev, head_rev) : 0) != merged) { + (head_rev ? repo_in_merge_bases(the_repository, rev, head_rev) : 0) != merged) { if (merged) warning(_("deleting branch '%s' that has been merged to\n" " '%s', but not yet merged to HEAD."), diff --git a/builtin/fast-import.c b/builtin/fast-import.c index 7faedc9aa44..e4566490d91 100644 --- a/builtin/fast-import.c +++ b/builtin/fast-import.c @@ -1626,7 +1626,7 @@ static int update_branch(struct branch *b) if (!old_cmit || !new_cmit) return error("Branch %s is missing commits.", b->name); - if (!in_merge_bases(old_cmit, new_cmit)) { + if (!repo_in_merge_bases(the_repository, old_cmit, new_cmit)) { warning("Not updating %s" " (new tip %s does not contain %s)", b->name, oid_to_hex(&b->oid), diff --git a/builtin/fetch.c b/builtin/fetch.c index 6bab662829f..16dc2a33cac 100644 --- a/builtin/fetch.c +++ b/builtin/fetch.c @@ -966,7 +966,8 @@ static int update_local_ref(struct ref *ref, if (fetch_show_forced_updates) { uint64_t t_before = getnanotime(); - fast_forward = in_merge_bases(current, updated); + fast_forward = repo_in_merge_bases(the_repository, current, + updated); forced_updates_ms += (getnanotime() - t_before) / 1000000; } else { fast_forward = 1; diff --git a/builtin/log.c b/builtin/log.c index 1e7bbedf5d2..e16bda87ba3 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -1663,7 +1663,9 @@ static struct commit *get_base_commit(const char *base_commit, return NULL; } commit = lookup_commit_or_die(&oid, "upstream base"); - base_list = get_merge_bases_many(commit, total, list); + base_list = repo_get_merge_bases_many(the_repository, + commit, total, + list); /* There should be one and only one merge base. */ if (!base_list || base_list->next) { if (die_on_failure) { @@ -1697,7 +1699,9 @@ static struct commit *get_base_commit(const char *base_commit, while (rev_nr > 1) { for (i = 0; i < rev_nr / 2; i++) { struct commit_list *merge_base; - merge_base = get_merge_bases(rev[2 * i], rev[2 * i + 1]); + merge_base = repo_get_merge_bases(the_repository, + rev[2 * i], + rev[2 * i + 1]); if (!merge_base || merge_base->next) { if (die_on_failure) { die(_("failed to find exact merge base")); @@ -1715,7 +1719,7 @@ static struct commit *get_base_commit(const char *base_commit, rev_nr = DIV_ROUND_UP(rev_nr, 2); } - if (!in_merge_bases(base, rev[0])) { + if (!repo_in_merge_bases(the_repository, base, rev[0])) { if (die_on_failure) { die(_("base commit should be the ancestor of revision list")); } else { diff --git a/builtin/merge-base.c b/builtin/merge-base.c index 5b0ed0d2738..671e424c26c 100644 --- a/builtin/merge-base.c +++ b/builtin/merge-base.c @@ -14,7 +14,8 @@ static int show_merge_base(struct commit **rev, int rev_nr, int show_all) { struct commit_list *result, *r; - result = get_merge_bases_many_dirty(rev[0], rev_nr - 1, rev + 1); + result = repo_get_merge_bases_many_dirty(the_repository, rev[0], + rev_nr - 1, rev + 1); if (!result) return 1; @@ -106,7 +107,7 @@ static int handle_is_ancestor(int argc, const char **argv) die("--is-ancestor takes exactly two commits"); one = get_commit_reference(argv[0]); two = get_commit_reference(argv[1]); - if (in_merge_bases(one, two)) + if (repo_in_merge_bases(the_repository, one, two)) return 0; else return 1; diff --git a/builtin/merge-tree.c b/builtin/merge-tree.c index e7825181648..234db21548b 100644 --- a/builtin/merge-tree.c +++ b/builtin/merge-tree.c @@ -453,7 +453,8 @@ static int real_merge(struct merge_tree_options *o, * Get the merge bases, in reverse order; see comment above * merge_incore_recursive in merge-ort.h */ - merge_bases = get_merge_bases(parent1, parent2); + merge_bases = repo_get_merge_bases(the_repository, parent1, + parent2); if (!merge_bases && !o->allow_unrelated_histories) die(_("refusing to merge unrelated histories")); merge_bases = reverse_commit_list(merge_bases); diff --git a/builtin/merge.c b/builtin/merge.c index 6a0519c39db..5dfc650a7bc 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -1530,7 +1530,8 @@ int cmd_merge(int argc, const char **argv, const char *prefix) if (!remoteheads) ; /* already up-to-date */ else if (!remoteheads->next) - common = get_merge_bases(head_commit, remoteheads->item); + common = repo_get_merge_bases(the_repository, head_commit, + remoteheads->item); else { struct commit_list *list = remoteheads; commit_list_insert(head_commit, &list); @@ -1648,7 +1649,9 @@ int cmd_merge(int argc, const char **argv, const char *prefix) * merge_bases again, otherwise "git merge HEAD^ * HEAD^^" would be missed. */ - common_one = get_merge_bases(head_commit, j->item); + common_one = repo_get_merge_bases(the_repository, + head_commit, + j->item); if (!oideq(&common_one->item->object.oid, &j->item->object.oid)) { up_to_date = 0; break; diff --git a/builtin/rebase.c b/builtin/rebase.c index 55ecc2d5f33..6390dd2fcc1 100644 --- a/builtin/rebase.c +++ b/builtin/rebase.c @@ -883,7 +883,7 @@ static int can_fast_forward(struct commit *onto, struct commit *upstream, if (!upstream) goto done; - merge_bases = get_merge_bases(upstream, head); + merge_bases = repo_get_merge_bases(the_repository, upstream, head); if (!merge_bases || merge_bases->next) goto done; @@ -902,7 +902,8 @@ static void fill_branch_base(struct rebase_options *options, { struct commit_list *merge_bases = NULL; - merge_bases = get_merge_bases(options->onto, options->orig_head); + merge_bases = repo_get_merge_bases(the_repository, options->onto, + options->orig_head); if (!merge_bases || merge_bases->next) oidcpy(branch_base, null_oid()); else diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c index c6ab537a44f..e2b7202b04c 100644 --- a/builtin/receive-pack.c +++ b/builtin/receive-pack.c @@ -1547,7 +1547,7 @@ static const char *update(struct command *cmd, struct shallow_info *si) } old_commit = (struct commit *)old_object; new_commit = (struct commit *)new_object; - if (!in_merge_bases(old_commit, new_commit)) { + if (!repo_in_merge_bases(the_repository, old_commit, new_commit)) { rp_error("denying non-fast-forward %s" " (you should pull first)", name); ret = "non-fast-forward"; diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c index 5db9d6ad518..4969815ca79 100644 --- a/builtin/rev-parse.c +++ b/builtin/rev-parse.c @@ -294,7 +294,7 @@ static int try_difference(const char *arg) *dotdot = '.'; return 0; } - exclude = get_merge_bases(a, b); + exclude = repo_get_merge_bases(the_repository, a, b); while (exclude) { struct commit *commit = pop_commit(&exclude); show_rev(REVERSED, &commit->object.oid, NULL); diff --git a/commit-reach.c b/commit-reach.c index 7c0c39fd286..4a2ea9ca1f7 100644 --- a/commit-reach.c +++ b/commit-reach.c @@ -164,7 +164,8 @@ struct commit_list *get_octopus_merge_bases(struct commit_list *in) for (j = ret; j; j = j->next) { struct commit_list *bases; - bases = get_merge_bases(i->item, j->item); + bases = repo_get_merge_bases(the_repository, i->item, + j->item); if (!new_commits) new_commits = bases; else diff --git a/commit-reach.h b/commit-reach.h index 148b56fea50..94a96e03299 100644 --- a/commit-reach.h +++ b/commit-reach.h @@ -19,11 +19,6 @@ struct commit_list *repo_get_merge_bases_many(struct repository *r, struct commit_list *repo_get_merge_bases_many_dirty(struct repository *r, struct commit *one, int n, struct commit **twos); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define get_merge_bases(r1, r2) repo_get_merge_bases(the_repository, r1, r2) -#define get_merge_bases_many(one, n, two) repo_get_merge_bases_many(the_repository, one, n, two) -#define get_merge_bases_many_dirty(one, n, twos) repo_get_merge_bases_many_dirty(the_repository, one, n, twos) -#endif struct commit_list *get_octopus_merge_bases(struct commit_list *in); @@ -36,10 +31,6 @@ int repo_in_merge_bases(struct repository *r, int repo_in_merge_bases_many(struct repository *r, struct commit *commit, int nr_reference, struct commit **reference); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define in_merge_bases(c1, c2) repo_in_merge_bases(the_repository, c1, c2) -#define in_merge_bases_many(c1, n, cs) repo_in_merge_bases_many(the_repository, c1, n, cs) -#endif /* * Takes a list of commits and returns a new list where those diff --git a/commit.c b/commit.c index c0b1db3d3e1..aa2e58ea207 100644 --- a/commit.c +++ b/commit.c @@ -1017,7 +1017,8 @@ struct commit *get_fork_point(const char *refname, struct commit *commit) for (i = 0; i < revs.nr; i++) revs.commit[i]->object.flags &= ~TMP_MARK; - bases = get_merge_bases_many(commit, revs.nr, revs.commit); + bases = repo_get_merge_bases_many(the_repository, commit, revs.nr, + revs.commit); /* * There should be one and only one merge base, when we found diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index dcdba314fc2..1ab63f0196b 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -38,6 +38,22 @@ | - peel_to_type + repo_peel_to_type +// commit-reach.h +| +- get_merge_bases ++ repo_get_merge_bases +| +- get_merge_bases_many ++ repo_get_merge_bases_many +| +- get_merge_bases_many_dirty ++ repo_get_merge_bases_many_dirty +| +- in_merge_bases ++ repo_in_merge_bases +| +- in_merge_bases_many ++ repo_in_merge_bases_many ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 2d200ab83e7..e9209fc0cc4 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,23 +5,7 @@ @@ @@ ( -// commit-reach.h -- get_merge_bases -+ repo_get_merge_bases -| -- get_merge_bases_many -+ repo_get_merge_bases_many -| -- get_merge_bases_many_dirty -+ repo_get_merge_bases_many_dirty -| -- in_merge_bases -+ repo_in_merge_bases -| -- in_merge_bases_many -+ repo_in_merge_bases_many // commit.h -| - parse_commit_internal + repo_parse_commit_internal | diff --git a/http-push.c b/http-push.c index 88aa045ecba..2693d73cf9a 100644 --- a/http-push.c +++ b/http-push.c @@ -1571,7 +1571,7 @@ static int verify_merge_base(struct object_id *head_oid, struct ref *remote) struct commit *branch = lookup_commit_or_die(&remote->old_oid, remote->name); - return in_merge_bases(branch, head); + return repo_in_merge_bases(the_repository, branch, head); } static int delete_remote_branch(const char *pattern, int force) diff --git a/log-tree.c b/log-tree.c index 49411c5c6a6..97d374c76d6 100644 --- a/log-tree.c +++ b/log-tree.c @@ -996,7 +996,7 @@ static int do_remerge_diff(struct rev_info *opt, /* Parse the relevant commits and get the merge bases */ parse_commit_or_die(parent1); parse_commit_or_die(parent2); - bases = get_merge_bases(parent1, parent2); + bases = repo_get_merge_bases(the_repository, parent1, parent2); /* Re-merge the parents */ merge_incore_recursive(&o, bases, parent1, parent2, &res); diff --git a/merge-ort.c b/merge-ort.c index 4c5be8ed910..186e26d90a0 100644 --- a/merge-ort.c +++ b/merge-ort.c @@ -5018,7 +5018,7 @@ static void merge_ort_internal(struct merge_options *opt, struct strbuf merge_base_abbrev = STRBUF_INIT; if (!merge_bases) { - merge_bases = get_merge_bases(h1, h2); + merge_bases = repo_get_merge_bases(the_repository, h1, h2); /* See merge-ort.h:merge_incore_recursive() declaration NOTE */ merge_bases = reverse_commit_list(merge_bases); } diff --git a/merge-recursive.c b/merge-recursive.c index 89731f40908..cfb201d682b 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -3592,7 +3592,7 @@ static int merge_recursive_internal(struct merge_options *opt, } if (!merge_bases) { - merge_bases = get_merge_bases(h1, h2); + merge_bases = repo_get_merge_bases(the_repository, h1, h2); merge_bases = reverse_commit_list(merge_bases); } diff --git a/notes-merge.c b/notes-merge.c index f9137ec768f..699edcfe105 100644 --- a/notes-merge.c +++ b/notes-merge.c @@ -601,7 +601,7 @@ int notes_merge(struct notes_merge_options *o, assert(local && remote); /* Find merge bases */ - bases = get_merge_bases(local, remote); + bases = repo_get_merge_bases(the_repository, local, remote); if (!bases) { base_oid = null_oid(); base_tree_oid = the_hash_algo->empty_tree; diff --git a/remote.c b/remote.c index a0f22c8751e..37cb5213795 100644 --- a/remote.c +++ b/remote.c @@ -2664,7 +2664,7 @@ static int is_reachable_in_reflog(const char *local, const struct ref *remote) if (MERGE_BASES_BATCH_SIZE < size) size = MERGE_BASES_BATCH_SIZE; - if ((ret = in_merge_bases_many(commit, size, chunk))) + if ((ret = repo_in_merge_bases_many(the_repository, commit, size, chunk))) break; } diff --git a/revision.c b/revision.c index e08f697c47c..b6a1b47c306 100644 --- a/revision.c +++ b/revision.c @@ -1960,7 +1960,7 @@ static void prepare_show_merge(struct rev_info *revs) other = lookup_commit_or_die(&oid, "MERGE_HEAD"); add_pending_object(revs, &head->object, "HEAD"); add_pending_object(revs, &other->object, "MERGE_HEAD"); - bases = get_merge_bases(head, other); + bases = repo_get_merge_bases(the_repository, head, other); add_rev_cmdline_list(revs, bases, REV_CMD_MERGE_BASE, UNINTERESTING | BOTTOM); add_pending_commit_list(revs, bases, UNINTERESTING | BOTTOM); free_commit_list(bases); @@ -2055,7 +2055,7 @@ static int handle_dotdot_1(const char *arg, char *dotdot, if (!a || !b) return dotdot_missing(arg, dotdot, revs, symmetric); - exclude = get_merge_bases(a, b); + exclude = repo_get_merge_bases(the_repository, a, b); add_rev_cmdline_list(revs, exclude, REV_CMD_MERGE_BASE, flags_exclude); add_pending_commit_list(revs, exclude, flags_exclude); diff --git a/sequencer.c b/sequencer.c index d73827632d8..3578dc25510 100644 --- a/sequencer.c +++ b/sequencer.c @@ -4105,7 +4105,8 @@ static int do_merge(struct repository *r, } merge_commit = to_merge->item; - bases = get_merge_bases(head_commit, merge_commit); + bases = repo_get_merge_bases(the_repository, head_commit, + merge_commit); if (bases && oideq(&merge_commit->object.oid, &bases->item->object.oid)) { ret = 0; diff --git a/shallow.c b/shallow.c index 1cbb05ba0e4..db9856ef8ad 100644 --- a/shallow.c +++ b/shallow.c @@ -793,7 +793,7 @@ static void post_assign_shallow(struct shallow_info *info, for (j = 0; j < bitmap_nr; j++) if (bitmap[0][j] && /* Step 7, reachability test at commit level */ - !in_merge_bases_many(c, ca.nr, ca.commits)) { + !repo_in_merge_bases_many(the_repository, c, ca.nr, ca.commits)) { update_refstatus(ref_status, info->ref->nr, *bitmap); dst++; break; @@ -821,9 +821,10 @@ int delayed_reachability_test(struct shallow_info *si, int c) si->nr_commits = ca.nr; } - si->reachable[c] = in_merge_bases_many(commit, - si->nr_commits, - si->commits); + si->reachable[c] = repo_in_merge_bases_many(the_repository, + commit, + si->nr_commits, + si->commits); si->need_reachability_test[c] = 0; } return si->reachable[c]; diff --git a/t/helper/test-reach.c b/t/helper/test-reach.c index afb9bb3189f..d08c3ffa3ba 100644 --- a/t/helper/test-reach.c +++ b/t/helper/test-reach.c @@ -107,13 +107,17 @@ int cmd__reach(int ac, const char **av) if (!strcmp(av[1], "ref_newer")) printf("%s(A,B):%d\n", av[1], ref_newer(&oid_A, &oid_B)); else if (!strcmp(av[1], "in_merge_bases")) - printf("%s(A,B):%d\n", av[1], in_merge_bases(A, B)); + printf("%s(A,B):%d\n", av[1], + repo_in_merge_bases(the_repository, A, B)); else if (!strcmp(av[1], "in_merge_bases_many")) - printf("%s(A,X):%d\n", av[1], in_merge_bases_many(A, X_nr, X_array)); + printf("%s(A,X):%d\n", av[1], + repo_in_merge_bases_many(the_repository, A, X_nr, X_array)); else if (!strcmp(av[1], "is_descendant_of")) printf("%s(A,X):%d\n", av[1], repo_is_descendant_of(r, A, X)); else if (!strcmp(av[1], "get_merge_bases_many")) { - struct commit_list *list = get_merge_bases_many(A, X_nr, X_array); + struct commit_list *list = repo_get_merge_bases_many(the_repository, + A, X_nr, + X_array); printf("%s(A,X):\n", av[1]); print_sorted_commit_ids(list); } else if (!strcmp(av[1], "reduce_heads")) { From patchwork Tue Mar 28 13:58:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191114 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4CB2DC77B61 for ; Tue, 28 Mar 2023 13:59:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232955AbjC1N7l (ORCPT ); Tue, 28 Mar 2023 09:59:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39188 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232943AbjC1N7Y (ORCPT ); Tue, 28 Mar 2023 09:59:24 -0400 Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B0CFA977F for ; Tue, 28 Mar 2023 06:59:16 -0700 (PDT) Received: by mail-wm1-x335.google.com with SMTP id q7-20020a05600c46c700b003ef6e809574so4240092wmo.4 for ; Tue, 28 Mar 2023 06:59:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011955; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=zVSn+4rQlgEn3H7izz3czysUQoBeZ7LT2yjBBh3jqeM=; b=J+7QaAsn1Ke+/SdI+/mLYL9GpQiwOXnswcqkV3gCBksTGRo78rQsPHa5XBZmDgXfPc gw1Z263AW2Xa3LyHwTlkJv+5CAwcCdoup9IRGbp/Cz/Vdhj16dPd08qAWJXzaLdxyNtj Qhn12YpBCIy4dRzLIuyUiXIWmc+TjmN9LcQI+vzaurSYWo/kVgocYRfWHZjUqkVvOzya /lMGtw06By5Ydwj59U+ur3zyX/XDIvV/pHpdUzEqwnntOFztei2D0sTTA611qRuOIL3H CSZ2UG052xNXMtj1K1YDwneUunYR2wKiwAvcD86ixdRKRZIEfSeQ4dSkyTRR95zWg0iy /0XA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011955; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=zVSn+4rQlgEn3H7izz3czysUQoBeZ7LT2yjBBh3jqeM=; b=PiEErLqXqmIoGZS30cOwCYIVil8lk3EGM49YBk+qrHbQPK6Vfdj2hgft8Qd9XUpmGM 0MbtryPvRkbFlsU4018Pg//j0Axoaeynn3hJs6YT81v3JPbeJ0fkZYUfRYTzJwl1XMz0 dlMAnzw4v2Zg1lt3DrLEuN53y3iXsbcRfsOSTZHeeKDh6GpZfJSP0Zw+P2cbYCaYgBqt eSwZ4xBZ0fuRzzdpT/1T1VzpJz35+25fn7HEv/cQAXZOQcc6aNmmImqM4zxT8K1zQCaD 24PNeQg5U8AO4qAzrX2z4Tf2QWXBAzt4wOrieFyYVNb8fz8ku5mQxhxcF0PcJ8Wy/omE kFNQ== X-Gm-Message-State: AO0yUKUKSL2syhZK0xF10Igw54c1AEmhYRA7dMY3e2amMRH11vQYcskn 4PT+5FXv67Nx/m5SvGYOP7nPetBDMJwsMw== X-Google-Smtp-Source: AK7set9zgQrQ/ghIxNLsMUz8GkbkrPCy/TECo0n+vwu53OF7Kqy3i6EldaZ/Emm1RV4tVkHmS37sPQ== X-Received: by 2002:a05:600c:2305:b0:3ee:9c0e:c78f with SMTP id 5-20020a05600c230500b003ee9c0ec78fmr12101268wmo.5.1680011955284; Tue, 28 Mar 2023 06:59:15 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:14 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 07/17] cocci: apply the "commit.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:48 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "commit.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- blame.c | 4 +- builtin/am.c | 7 +- builtin/blame.c | 6 +- builtin/checkout.c | 13 +-- builtin/commit.c | 8 +- builtin/describe.c | 4 +- builtin/diff.c | 3 +- builtin/fast-export.c | 4 +- builtin/gc.c | 4 +- builtin/log.c | 5 +- builtin/merge-tree.c | 6 +- builtin/merge.c | 3 +- builtin/name-rev.c | 4 +- builtin/notes.c | 2 +- builtin/rebase.c | 2 +- builtin/replace.c | 4 +- builtin/shortlog.c | 5 +- builtin/show-branch.c | 4 +- commit-graph.c | 2 +- commit-reach.c | 16 ++-- commit.c | 25 +++--- commit.h | 18 ---- contrib/coccinelle/the_repository.cocci | 19 +++++ .../coccinelle/the_repository.pending.cocci | 19 ----- delta-islands.c | 5 +- fmt-merge-msg.c | 5 +- fsck.c | 4 +- http-push.c | 3 +- list-objects.c | 18 ++-- merge-recursive.c | 2 +- negotiator/default.c | 6 +- negotiator/skipping.c | 2 +- notes-merge.c | 5 +- notes-utils.c | 2 +- object-name.c | 8 +- pack-bitmap-write.c | 3 +- pretty.c | 5 +- reflog.c | 2 +- revision.c | 12 +-- sequencer.c | 82 +++++++++++-------- shallow.c | 4 +- t/helper/test-fast-rebase.c | 9 +- tree.c | 2 +- walker.c | 4 +- 44 files changed, 196 insertions(+), 174 deletions(-) diff --git a/blame.c b/blame.c index e45d8a3bf92..0f2751de83b 100644 --- a/blame.c +++ b/blame.c @@ -2430,7 +2430,7 @@ static void pass_blame(struct blame_scoreboard *sb, struct blame_origin *origin, if (sg_origin[i]) continue; - if (parse_commit(p)) + if (repo_parse_commit(the_repository, p)) continue; porigin = find(sb->repo, p, origin, sb->bloom_data); if (!porigin) @@ -2593,7 +2593,7 @@ void assign_blame(struct blame_scoreboard *sb, int opt) * so hold onto it in the meantime. */ blame_origin_incref(suspect); - parse_commit(commit); + repo_parse_commit(the_repository, commit); if (sb->reverse || (!(commit->object.flags & UNINTERESTING) && !(revs->max_age != -1 && commit->date < revs->max_age))) diff --git a/builtin/am.c b/builtin/am.c index 775beac2a92..d89660d138d 100644 --- a/builtin/am.c +++ b/builtin/am.c @@ -1330,7 +1330,8 @@ static void get_commit_info(struct am_state *state, struct commit *commit) size_t ident_len; struct ident_split id; - buffer = logmsg_reencode(commit, NULL, get_commit_output_encoding()); + buffer = repo_logmsg_reencode(the_repository, commit, NULL, + get_commit_output_encoding()); ident_line = find_commit_header(buffer, "author", &ident_len); if (!ident_line) @@ -1362,7 +1363,7 @@ static void get_commit_info(struct am_state *state, struct commit *commit) die(_("unable to parse commit %s"), oid_to_hex(&commit->object.oid)); state->msg = xstrdup(msg + 2); state->msg_len = strlen(state->msg); - unuse_commit_buffer(commit, buffer); + repo_unuse_commit_buffer(the_repository, commit, buffer); } /** @@ -1405,7 +1406,7 @@ static void write_index_patch(const struct am_state *state) if (!repo_get_oid(the_repository, "HEAD", &head)) { struct commit *commit = lookup_commit_or_die(&head, "HEAD"); - tree = get_commit_tree(commit); + tree = repo_get_commit_tree(the_repository, commit); } else tree = lookup_tree(the_repository, the_repository->hash_algo->empty_tree); diff --git a/builtin/blame.c b/builtin/blame.c index 6c266019ebb..7f92f9c1d39 100644 --- a/builtin/blame.c +++ b/builtin/blame.c @@ -201,13 +201,13 @@ static void get_commit_info(struct commit *commit, const char *message; encoding = get_log_output_encoding(); - message = logmsg_reencode(commit, NULL, encoding); + message = repo_logmsg_reencode(the_repository, commit, NULL, encoding); get_ac_line(message, "\nauthor ", &ret->author, &ret->author_mail, &ret->author_time, &ret->author_tz); if (!detailed) { - unuse_commit_buffer(commit, message); + repo_unuse_commit_buffer(the_repository, commit, message); return; } @@ -221,7 +221,7 @@ static void get_commit_info(struct commit *commit, else strbuf_addf(&ret->summary, "(%s)", oid_to_hex(&commit->object.oid)); - unuse_commit_buffer(commit, message); + repo_unuse_commit_buffer(the_repository, commit, message); } /* diff --git a/builtin/checkout.c b/builtin/checkout.c index 18f3fc76ced..ad6d5304b64 100644 --- a/builtin/checkout.c +++ b/builtin/checkout.c @@ -654,7 +654,7 @@ static void describe_detached_head(const char *msg, struct commit *commit) { struct strbuf sb = STRBUF_INIT; - if (!parse_commit(commit)) + if (!repo_parse_commit(the_repository, commit)) pp_commit_easy(CMIT_FMT_ONELINE, commit, &sb); if (print_sha1_ellipsis()) { fprintf(stderr, "%s %s... %s\n", msg, @@ -769,7 +769,8 @@ static int merge_working_tree(const struct checkout_opts *opts, BUG("'switch --orphan' should never accept a commit as starting point"); new_tree = parse_tree_indirect(the_hash_algo->empty_tree); } else - new_tree = get_commit_tree(new_branch_info->commit); + new_tree = repo_get_commit_tree(the_repository, + new_branch_info->commit); if (opts->discard_changes) { ret = reset_tree(new_tree, opts, 1, writeout_error, new_branch_info); if (ret) @@ -831,7 +832,8 @@ static int merge_working_tree(const struct checkout_opts *opts, */ if (!old_branch_info->commit) return 1; - old_tree = get_commit_tree(old_branch_info->commit); + old_tree = repo_get_commit_tree(the_repository, + old_branch_info->commit); if (repo_index_has_changes(the_repository, old_tree, &sb)) die(_("cannot continue with staged changes in " @@ -1020,7 +1022,7 @@ static void describe_one_orphan(struct strbuf *sb, struct commit *commit) strbuf_addstr(sb, " "); strbuf_add_unique_abbrev(sb, &commit->object.oid, DEFAULT_ABBREV); strbuf_addch(sb, ' '); - if (!parse_commit(commit)) + if (!repo_parse_commit(the_repository, commit)) pp_commit_easy(CMIT_FMT_ONELINE, commit, sb); strbuf_addch(sb, '\n'); } @@ -1220,7 +1222,8 @@ static void setup_new_branch_info_and_source_tree( *source_tree = parse_tree_indirect(rev); } else { parse_commit_or_die(new_branch_info->commit); - *source_tree = get_commit_tree(new_branch_info->commit); + *source_tree = repo_get_commit_tree(the_repository, + new_branch_info->commit); } } diff --git a/builtin/commit.c b/builtin/commit.c index 95bca976a58..c64fc50e923 100644 --- a/builtin/commit.c +++ b/builtin/commit.c @@ -712,7 +712,7 @@ static void prepare_amend_commit(struct commit *commit, struct strbuf *sb, { const char *buffer, *subject, *fmt; - buffer = get_commit_buffer(commit, NULL); + buffer = repo_get_commit_buffer(the_repository, commit, NULL); find_commit_subject(buffer, &subject); /* * If we amend the 'amend!' commit then we don't want to @@ -720,7 +720,7 @@ static void prepare_amend_commit(struct commit *commit, struct strbuf *sb, */ fmt = starts_with(subject, "amend!") ? "%b" : "%B"; format_commit_message(commit, fmt, sb, ctx); - unuse_commit_buffer(commit, buffer); + repo_unuse_commit_buffer(the_repository, commit, buffer); } static int prepare_to_commit(const char *index_file, const char *prefix, @@ -1183,7 +1183,7 @@ static const char *read_commit_message(const char *name) if (!commit) die(_("could not lookup commit %s"), name); out_enc = get_commit_output_encoding(); - return logmsg_reencode(commit, NULL, out_enc); + return repo_logmsg_reencode(the_repository, commit, NULL, out_enc); } /* @@ -1714,7 +1714,7 @@ int cmd_commit(int argc, const char **argv, const char *prefix) current_head = NULL; else { current_head = lookup_commit_or_die(&oid, "HEAD"); - if (parse_commit(current_head)) + if (repo_parse_commit(the_repository, current_head)) die(_("could not parse HEAD commit")); } verbose = -1; /* unspecified */ diff --git a/builtin/describe.c b/builtin/describe.c index de3743e803a..3e5595e0ed3 100644 --- a/builtin/describe.c +++ b/builtin/describe.c @@ -262,7 +262,7 @@ static unsigned long finish_depth_computation( best->depth++; while (parents) { struct commit *p = parents->item; - parse_commit(p); + repo_parse_commit(the_repository, p); if (!(p->object.flags & SEEN)) commit_list_insert_by_date(p, list); p->object.flags |= c->object.flags; @@ -405,7 +405,7 @@ static void describe_commit(struct object_id *oid, struct strbuf *dst) } while (parents) { struct commit *p = parents->item; - parse_commit(p); + repo_parse_commit(the_repository, p); if (!(p->object.flags & SEEN)) commit_list_insert_by_date(p, &list); p->object.flags |= c->object.flags; diff --git a/builtin/diff.c b/builtin/diff.c index 26f1e532c66..1091c377af7 100644 --- a/builtin/diff.c +++ b/builtin/diff.c @@ -548,7 +548,8 @@ int cmd_diff(int argc, const char **argv, const char *prefix) if (!obj) die(_("invalid object '%s' given."), name); if (obj->type == OBJ_COMMIT) - obj = &get_commit_tree(((struct commit *)obj))->object; + obj = &repo_get_commit_tree(the_repository, + ((struct commit *)obj))->object; if (obj->type == OBJ_TREE) { if (sdiff.skip && bitmap_get(sdiff.skip, i)) diff --git a/builtin/fast-export.c b/builtin/fast-export.c index 78493c6d2bf..fc5859dc9fa 100644 --- a/builtin/fast-export.c +++ b/builtin/fast-export.c @@ -619,7 +619,7 @@ static void handle_commit(struct commit *commit, struct rev_info *rev, rev->diffopt.output_format = DIFF_FORMAT_CALLBACK; parse_commit_or_die(commit); - commit_buffer = get_commit_buffer(commit, NULL); + commit_buffer = repo_get_commit_buffer(the_repository, commit, NULL); author = strstr(commit_buffer, "\nauthor "); if (!author) die("could not find author in commit %s", @@ -700,7 +700,7 @@ static void handle_commit(struct commit *commit, struct rev_info *rev, ? strlen(message) : 0), reencoded ? reencoded : message ? message : ""); free(reencoded); - unuse_commit_buffer(commit, commit_buffer); + repo_unuse_commit_buffer(the_repository, commit, commit_buffer); for (i = 0, p = commit->parents; p; p = p->next) { struct object *obj = &p->item->object; diff --git a/builtin/gc.c b/builtin/gc.c index c58fe8c936c..9dc80344b64 100644 --- a/builtin/gc.c +++ b/builtin/gc.c @@ -821,7 +821,7 @@ static int dfs_on_ref(const char *refname UNUSED, commit = lookup_commit(the_repository, oid); if (!commit) return 0; - if (parse_commit(commit) || + if (repo_parse_commit(the_repository, commit) || commit_graph_position(commit) != COMMIT_NOT_FROM_GRAPH) return 0; @@ -838,7 +838,7 @@ static int dfs_on_ref(const char *refname UNUSED, commit = pop_commit(&stack); for (parent = commit->parents; parent; parent = parent->next) { - if (parse_commit(parent->item) || + if (repo_parse_commit(the_repository, parent->item) || commit_graph_position(parent->item) != COMMIT_NOT_FROM_GRAPH || parent->item->object.flags & SEEN) continue; diff --git a/builtin/log.c b/builtin/log.c index e16bda87ba3..a55325025a4 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -1328,10 +1328,11 @@ static void make_cover_letter(struct rev_info *rev, int use_separate_file, log_write_email_headers(rev, head, &pp.after_subject, &need_8bit_cte, 0); for (i = 0; !need_8bit_cte && i < nr; i++) { - const char *buf = get_commit_buffer(list[i], NULL); + const char *buf = repo_get_commit_buffer(the_repository, + list[i], NULL); if (has_non_ascii(buf)) need_8bit_cte = 1; - unuse_commit_buffer(list[i], buf); + repo_unuse_commit_buffer(the_repository, list[i], buf); } if (!branch_name) diff --git a/builtin/merge-tree.c b/builtin/merge-tree.c index 234db21548b..dd23ee684c7 100644 --- a/builtin/merge-tree.c +++ b/builtin/merge-tree.c @@ -444,9 +444,9 @@ static int real_merge(struct merge_tree_options *o, die(_("could not lookup commit %s"), merge_base); opt.ancestor = merge_base; - base_tree = get_commit_tree(base_commit); - parent1_tree = get_commit_tree(parent1); - parent2_tree = get_commit_tree(parent2); + base_tree = repo_get_commit_tree(the_repository, base_commit); + parent1_tree = repo_get_commit_tree(the_repository, parent1); + parent2_tree = repo_get_commit_tree(the_repository, parent2); merge_incore_nonrecursive(&opt, base_tree, parent1_tree, parent2_tree, &result); } else { /* diff --git a/builtin/merge.c b/builtin/merge.c index 5dfc650a7bc..559aab1c380 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -1610,7 +1610,8 @@ int cmd_merge(int argc, const char **argv, const char *prefix) * Must first ensure that index matches HEAD before * attempting a trivial merge. */ - struct tree *head_tree = get_commit_tree(head_commit); + struct tree *head_tree = repo_get_commit_tree(the_repository, + head_commit); struct strbuf sb = STRBUF_INIT; if (repo_index_has_changes(the_repository, head_tree, diff --git a/builtin/name-rev.c b/builtin/name-rev.c index cd9c000f56b..9d0dd0ad017 100644 --- a/builtin/name-rev.c +++ b/builtin/name-rev.c @@ -182,7 +182,7 @@ static void name_rev(struct commit *start_commit, size_t parents_to_queue_nr, parents_to_queue_alloc = 0; struct rev_name *start_name; - parse_commit(start_commit); + repo_parse_commit(the_repository, start_commit); if (commit_is_before_cutoff(start_commit)) return; @@ -212,7 +212,7 @@ static void name_rev(struct commit *start_commit, struct rev_name *parent_name; int generation, distance; - parse_commit(parent); + repo_parse_commit(the_repository, parent); if (commit_is_before_cutoff(parent)) continue; diff --git a/builtin/notes.c b/builtin/notes.c index 73c9c691781..9aea5a4b27b 100644 --- a/builtin/notes.c +++ b/builtin/notes.c @@ -722,7 +722,7 @@ static int merge_commit(struct notes_merge_options *o) die(_("failed to read ref NOTES_MERGE_PARTIAL")); else if (!(partial = lookup_commit_reference(the_repository, &oid))) die(_("could not find commit from NOTES_MERGE_PARTIAL.")); - else if (parse_commit(partial)) + else if (repo_parse_commit(the_repository, partial)) die(_("could not parse commit from NOTES_MERGE_PARTIAL.")); if (partial->parents) diff --git a/builtin/rebase.c b/builtin/rebase.c index 6390dd2fcc1..3e2cdabfda5 100644 --- a/builtin/rebase.c +++ b/builtin/rebase.c @@ -854,7 +854,7 @@ static int checkout_up_to_date(struct rebase_options *options) static int is_linear_history(struct commit *from, struct commit *to) { while (to && to != from) { - parse_commit(to); + repo_parse_commit(the_repository, to); if (!to->parents) return 1; if (to->parents->next) diff --git a/builtin/replace.c b/builtin/replace.c index f765a3e2d75..ef70f2d1005 100644 --- a/builtin/replace.c +++ b/builtin/replace.c @@ -460,9 +460,9 @@ static int create_graft(int argc, const char **argv, int force, int gentle) if (!commit) return error(_("could not parse %s"), old_ref); - buffer = get_commit_buffer(commit, &size); + buffer = repo_get_commit_buffer(the_repository, commit, &size); strbuf_add(&buf, buffer, size); - unuse_commit_buffer(commit, buffer); + repo_unuse_commit_buffer(the_repository, commit, buffer); if (replace_parents(&buf, argc - 1, &argv[1]) < 0) { strbuf_release(&buf); diff --git a/builtin/shortlog.c b/builtin/shortlog.c index 27a87167e19..8afd1ad865e 100644 --- a/builtin/shortlog.c +++ b/builtin/shortlog.c @@ -179,7 +179,8 @@ static void insert_records_from_trailers(struct shortlog *log, * Using format_commit_message("%B") would be simpler here, but * this saves us copying the message. */ - commit_buffer = logmsg_reencode(commit, NULL, ctx->output_encoding); + commit_buffer = repo_logmsg_reencode(the_repository, commit, NULL, + ctx->output_encoding); body = strstr(commit_buffer, "\n\n"); if (!body) return; @@ -202,7 +203,7 @@ static void insert_records_from_trailers(struct shortlog *log, trailer_iterator_release(&iter); strbuf_release(&ident); - unuse_commit_buffer(commit, commit_buffer); + repo_unuse_commit_buffer(the_repository, commit, commit_buffer); } static int shortlog_needs_dedup(const struct shortlog *log) diff --git a/builtin/show-branch.c b/builtin/show-branch.c index 9d208db3b43..7aea28f5b06 100644 --- a/builtin/show-branch.c +++ b/builtin/show-branch.c @@ -241,7 +241,7 @@ static void join_revs(struct commit_list **list_p, parents = parents->next; if ((this_flag & flags) == flags) continue; - parse_commit(p); + repo_parse_commit(the_repository, p); if (mark_seen(p, seen_p) && !still_interesting) extra--; p->object.flags |= flags; @@ -843,7 +843,7 @@ int cmd_show_branch(int ac, const char **av, const char *prefix) if (!commit) die(_("cannot find commit %s (%s)"), ref_name[num_rev], oid_to_hex(&revkey)); - parse_commit(commit); + repo_parse_commit(the_repository, commit); mark_seen(commit, &seen); /* rev#0 uses bit REV_SHIFT, rev#1 uses bit REV_SHIFT+1, diff --git a/commit-graph.c b/commit-graph.c index 5e6098ff356..a30c4c96940 100644 --- a/commit-graph.c +++ b/commit-graph.c @@ -2550,7 +2550,7 @@ int verify_commit_graph(struct repository *r, struct commit_graph *g, int flags) graph_commit = lookup_commit(r, &cur_oid); odb_commit = (struct commit *)create_object(r, &cur_oid, alloc_commit_node(r)); - if (parse_commit_internal(odb_commit, 0, 0)) { + if (repo_parse_commit_internal(the_repository, odb_commit, 0, 0)) { graph_report(_("failed to parse commit %s from object database for commit-graph"), oid_to_hex(&cur_oid)); continue; diff --git a/commit-reach.c b/commit-reach.c index 4a2ea9ca1f7..b9eb0952d7b 100644 --- a/commit-reach.c +++ b/commit-reach.c @@ -587,7 +587,7 @@ int ref_newer(const struct object_id *new_oid, const struct object_id *old_oid) return 0; new_commit = (struct commit *) o; - if (parse_commit(new_commit) < 0) + if (repo_parse_commit(the_repository, new_commit) < 0) return 0; commit_list_insert(old_commit, &old_commit_list); @@ -751,7 +751,7 @@ int can_all_from_reach_with_flag(struct object_array *from, } list[nr_commits] = (struct commit *)from_one; - if (parse_commit(list[nr_commits]) || + if (repo_parse_commit(the_repository, list[nr_commits]) || commit_graph_generation(list[nr_commits]) < min_generation) { result = 0; goto cleanup; @@ -786,7 +786,7 @@ int can_all_from_reach_with_flag(struct object_array *from, if (!(parent->item->object.flags & assign_flag)) { parent->item->object.flags |= assign_flag; - if (parse_commit(parent->item) || + if (repo_parse_commit(the_repository, parent->item) || parent->item->date < min_commit_date || commit_graph_generation(parent->item) < min_generation) continue; @@ -832,7 +832,7 @@ int can_all_from_reach(struct commit_list *from, struct commit_list *to, while (from_iter) { add_object_array(&from_iter->item->object, NULL, &from_objs); - if (!parse_commit(from_iter->item)) { + if (!repo_parse_commit(the_repository, from_iter->item)) { timestamp_t generation; if (from_iter->item->date < min_commit_date) min_commit_date = from_iter->item->date; @@ -846,7 +846,7 @@ int can_all_from_reach(struct commit_list *from, struct commit_list *to, } while (to_iter) { - if (!parse_commit(to_iter->item)) { + if (!repo_parse_commit(the_repository, to_iter->item)) { timestamp_t generation; if (to_iter->item->date < min_commit_date) min_commit_date = to_iter->item->date; @@ -896,7 +896,7 @@ struct commit_list *get_reachable_subset(struct commit **from, int nr_from, timestamp_t generation; struct commit *c = *item; - parse_commit(c); + repo_parse_commit(the_repository, c); generation = commit_graph_generation(c); if (generation < min_generation) min_generation = generation; @@ -911,7 +911,7 @@ struct commit_list *get_reachable_subset(struct commit **from, int nr_from, struct commit *c = *item; if (!(c->object.flags & PARENT2)) { c->object.flags |= PARENT2; - parse_commit(c); + repo_parse_commit(the_repository, c); prio_queue_put(&queue, *item); } @@ -930,7 +930,7 @@ struct commit_list *get_reachable_subset(struct commit **from, int nr_from, for (parents = current->parents; parents; parents = parents->next) { struct commit *p = parents->item; - parse_commit(p); + repo_parse_commit(the_repository, p); if (commit_graph_generation(p) < min_generation) continue; diff --git a/commit.c b/commit.c index aa2e58ea207..127ec79b2d3 100644 --- a/commit.c +++ b/commit.c @@ -84,7 +84,7 @@ struct commit *lookup_commit_reference_by_name(const char *name) if (repo_get_oid_committish(the_repository, name, &oid)) return NULL; commit = lookup_commit_reference(the_repository, &oid); - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) return NULL; return commit; } @@ -383,7 +383,7 @@ struct tree *repo_get_commit_tree(struct repository *r, struct object_id *get_commit_tree_oid(const struct commit *commit) { - struct tree *tree = get_commit_tree(commit); + struct tree *tree = repo_get_commit_tree(the_repository, commit); return tree ? &tree->object.oid : NULL; } @@ -556,7 +556,7 @@ int repo_parse_commit_gently(struct repository *r, void parse_commit_or_die(struct commit *item) { - if (parse_commit(item)) + if (repo_parse_commit(the_repository, item)) die("unable to parse commit %s", item ? oid_to_hex(&item->object.oid) : "(null)"); } @@ -689,7 +689,7 @@ struct commit *pop_most_recent_commit(struct commit_list **list, while (parents) { struct commit *commit = parents->item; - if (!parse_commit(commit) && !(commit->object.flags & mark)) { + if (!repo_parse_commit(the_repository, commit) && !(commit->object.flags & mark)) { commit->object.flags |= mark; commit_list_insert_by_date(commit, list); } @@ -763,7 +763,8 @@ define_commit_slab(author_date_slab, timestamp_t); void record_author_date(struct author_date_slab *author_date, struct commit *commit) { - const char *buffer = get_commit_buffer(commit, NULL); + const char *buffer = repo_get_commit_buffer(the_repository, commit, + NULL); struct ident_split ident; const char *ident_line; size_t ident_len; @@ -783,7 +784,7 @@ void record_author_date(struct author_date_slab *author_date, *(author_date_slab_at(author_date, commit)) = date; fail_exit: - unuse_commit_buffer(commit, buffer); + repo_unuse_commit_buffer(the_repository, commit, buffer); } int compare_commits_by_author_date(const void *a_, const void *b_, @@ -966,7 +967,7 @@ static void add_one_commit(struct object_id *oid, struct rev_collect *revs) commit = lookup_commit(the_repository, oid); if (!commit || (commit->object.flags & TMP_MARK) || - parse_commit(commit)) + repo_parse_commit(the_repository, commit)) return; ALLOC_GROW(revs->commit, revs->nr + 1, revs->alloc); @@ -1099,10 +1100,11 @@ int parse_signed_commit(const struct commit *commit, const struct git_hash_algo *algop) { unsigned long size; - const char *buffer = get_commit_buffer(commit, &size); + const char *buffer = repo_get_commit_buffer(the_repository, commit, + &size); int ret = parse_buffer_signed_by_header(buffer, size, payload, signature, algop); - unuse_commit_buffer(commit, buffer); + repo_unuse_commit_buffer(the_repository, commit, buffer); return ret; } @@ -1321,9 +1323,10 @@ struct commit_extra_header *read_commit_extra_headers(struct commit *commit, { struct commit_extra_header *extra = NULL; unsigned long size; - const char *buffer = get_commit_buffer(commit, &size); + const char *buffer = repo_get_commit_buffer(the_repository, commit, + &size); extra = read_commit_extra_header_lines(buffer, size, exclude); - unuse_commit_buffer(commit, buffer); + repo_unuse_commit_buffer(the_repository, commit, buffer); return extra; } diff --git a/commit.h b/commit.h index 06657b4c6e7..d87d5cd2a09 100644 --- a/commit.h +++ b/commit.h @@ -109,11 +109,6 @@ static inline int repo_parse_commit_no_graph(struct repository *r, return repo_parse_commit_internal(r, commit, 0, 0); } -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define parse_commit_internal(item, quiet, use) repo_parse_commit_internal(the_repository, item, quiet, use) -#define parse_commit(item) repo_parse_commit(the_repository, item) -#endif - void parse_commit_or_die(struct commit *item); struct buffer_slab; @@ -140,9 +135,6 @@ const void *get_cached_commit_buffer(struct repository *, const struct commit *, const void *repo_get_commit_buffer(struct repository *r, const struct commit *, unsigned long *size); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define get_commit_buffer(c, s) repo_get_commit_buffer(the_repository, c, s) -#endif /* * Tell the commit subsystem that we are done with a particular commit buffer. @@ -153,9 +145,6 @@ const void *repo_get_commit_buffer(struct repository *r, void repo_unuse_commit_buffer(struct repository *r, const struct commit *, const void *buffer); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define unuse_commit_buffer(c, b) repo_unuse_commit_buffer(the_repository, c, b) -#endif /* * Free any cached object buffer associated with the commit. @@ -163,7 +152,6 @@ void repo_unuse_commit_buffer(struct repository *r, void free_commit_buffer(struct parsed_object_pool *pool, struct commit *); struct tree *repo_get_commit_tree(struct repository *, const struct commit *); -#define get_commit_tree(c) repo_get_commit_tree(the_repository, c) struct object_id *get_commit_tree_oid(const struct commit *); /* @@ -205,16 +193,10 @@ void free_commit_list(struct commit_list *list); struct rev_info; /* in revision.h, it circularly uses enum cmit_fmt */ -const char *logmsg_reencode(const struct commit *commit, - char **commit_encoding, - const char *output_encoding); const char *repo_logmsg_reencode(struct repository *r, const struct commit *commit, char **commit_encoding, const char *output_encoding); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define logmsg_reencode(c, enc, out) repo_logmsg_reencode(the_repository, c, enc, out) -#endif const char *skip_blank_lines(const char *msg); diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index 1ab63f0196b..0cdf3f46304 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -54,6 +54,25 @@ | - in_merge_bases_many + repo_in_merge_bases_many +// commit.h +| +- parse_commit_internal ++ repo_parse_commit_internal +| +- parse_commit ++ repo_parse_commit +| +- get_commit_buffer ++ repo_get_commit_buffer +| +- unuse_commit_buffer ++ repo_unuse_commit_buffer +| +- logmsg_reencode ++ repo_logmsg_reencode +| +- get_commit_tree ++ repo_get_commit_tree ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index e9209fc0cc4..bf19e6a2487 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,26 +5,7 @@ @@ @@ ( -// commit.h -- parse_commit_internal -+ repo_parse_commit_internal -| -- parse_commit -+ repo_parse_commit -| -- get_commit_buffer -+ repo_get_commit_buffer -| -- unuse_commit_buffer -+ repo_unuse_commit_buffer -| -- logmsg_reencode -+ repo_logmsg_reencode -| -- get_commit_tree -+ repo_get_commit_tree // diff.h -| - diff_setup + repo_diff_setup // object-store.h diff --git a/delta-islands.c b/delta-islands.c index fe12c93005b..7a412ccbf63 100644 --- a/delta-islands.c +++ b/delta-islands.c @@ -508,8 +508,9 @@ void propagate_island_marks(struct commit *commit) struct commit_list *p; struct island_bitmap *root_marks = kh_value(island_marks, pos); - parse_commit(commit); - set_island_marks(&get_commit_tree(commit)->object, root_marks); + repo_parse_commit(the_repository, commit); + set_island_marks(&repo_get_commit_tree(the_repository, commit)->object, + root_marks); for (p = commit->parents; p; p = p->next) set_island_marks(&p->item->object, root_marks); } diff --git a/fmt-merge-msg.c b/fmt-merge-msg.c index bb56d957a64..29a1afa2485 100644 --- a/fmt-merge-msg.c +++ b/fmt-merge-msg.c @@ -269,9 +269,10 @@ static void record_person_from_buf(int which, struct string_list *people, static void record_person(int which, struct string_list *people, struct commit *commit) { - const char *buffer = get_commit_buffer(commit, NULL); + const char *buffer = repo_get_commit_buffer(the_repository, commit, + NULL); record_person_from_buf(which, people, buffer); - unuse_commit_buffer(commit, buffer); + repo_unuse_commit_buffer(the_repository, commit, buffer); } static int cmp_string_list_util_as_integral(const void *a_, const void *b_) diff --git a/fsck.c b/fsck.c index 871c0a9a252..0d752d57717 100644 --- a/fsck.c +++ b/fsck.c @@ -355,7 +355,7 @@ static int fsck_walk_commit(struct commit *commit, void *data, struct fsck_optio int result; const char *name; - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) return -1; name = fsck_get_object_name(options, &commit->object.oid); @@ -363,7 +363,7 @@ static int fsck_walk_commit(struct commit *commit, void *data, struct fsck_optio fsck_put_object_name(options, get_commit_tree_oid(commit), "%s:", name); - result = options->walk((struct object *)get_commit_tree(commit), + result = options->walk((struct object *) repo_get_commit_tree(the_repository, commit), OBJ_TREE, data, options); if (result < 0) return result; diff --git a/http-push.c b/http-push.c index 2693d73cf9a..e149daeff3d 100644 --- a/http-push.c +++ b/http-push.c @@ -1332,7 +1332,8 @@ static int get_delta(struct rev_info *revs, struct remote_lock *lock) int count = 0; while ((commit = get_revision(revs)) != NULL) { - p = process_tree(get_commit_tree(commit), p); + p = process_tree(repo_get_commit_tree(the_repository, commit), + p); commit->object.flags |= LOCAL; if (!(commit->object.flags & UNINTERESTING)) count += add_send_request(&commit->object, lock); diff --git a/list-objects.c b/list-objects.c index ab5745bbfe4..d75132cfd73 100644 --- a/list-objects.c +++ b/list-objects.c @@ -228,7 +228,8 @@ static void mark_edge_parents_uninteresting(struct commit *commit, struct commit *parent = parents->item; if (!(parent->object.flags & UNINTERESTING)) continue; - mark_tree_uninteresting(revs->repo, get_commit_tree(parent)); + mark_tree_uninteresting(revs->repo, + repo_get_commit_tree(the_repository, parent)); if (revs->edge_hint && !(parent->object.flags & SHOWN)) { parent->object.flags |= SHOWN; show_edge(parent); @@ -245,7 +246,8 @@ static void add_edge_parents(struct commit *commit, for (parents = commit->parents; parents; parents = parents->next) { struct commit *parent = parents->item; - struct tree *tree = get_commit_tree(parent); + struct tree *tree = repo_get_commit_tree(the_repository, + parent); if (!tree) continue; @@ -276,7 +278,8 @@ void mark_edges_uninteresting(struct rev_info *revs, for (list = revs->commits; list; list = list->next) { struct commit *commit = list->item; - struct tree *tree = get_commit_tree(commit); + struct tree *tree = repo_get_commit_tree(the_repository, + commit); if (commit->object.flags & UNINTERESTING) tree->object.flags |= UNINTERESTING; @@ -292,7 +295,7 @@ void mark_edges_uninteresting(struct rev_info *revs, struct commit *commit = list->item; if (commit->object.flags & UNINTERESTING) { mark_tree_uninteresting(revs->repo, - get_commit_tree(commit)); + repo_get_commit_tree(the_repository, commit)); if (revs->edge_hint_aggressive && !(commit->object.flags & SHOWN)) { commit->object.flags |= SHOWN; show_edge(commit); @@ -310,7 +313,7 @@ void mark_edges_uninteresting(struct rev_info *revs, if (obj->type != OBJ_COMMIT || !(obj->flags & UNINTERESTING)) continue; mark_tree_uninteresting(revs->repo, - get_commit_tree(commit)); + repo_get_commit_tree(the_repository, commit)); if (!(obj->flags & SHOWN)) { obj->flags |= SHOWN; show_edge(commit); @@ -377,8 +380,9 @@ static void do_traverse(struct traversal_context *ctx) */ if (!ctx->revs->tree_objects) ; /* do not bother loading tree */ - else if (get_commit_tree(commit)) { - struct tree *tree = get_commit_tree(commit); + else if (repo_get_commit_tree(the_repository, commit)) { + struct tree *tree = repo_get_commit_tree(the_repository, + commit); tree->object.flags |= NOT_USER_GIVEN; add_pending_tree(ctx->revs, tree); } else if (commit->object.parsed) { diff --git a/merge-recursive.c b/merge-recursive.c index cfb201d682b..6eeb4844f38 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -3797,7 +3797,7 @@ static struct commit *get_ref(struct repository *repo, return make_virtual_commit(repo, (struct tree*)object, name); if (object->type != OBJ_COMMIT) return NULL; - if (parse_commit((struct commit *)object)) + if (repo_parse_commit(the_repository, (struct commit *)object)) return NULL; return (struct commit *)object; } diff --git a/negotiator/default.c b/negotiator/default.c index b7e79feaf04..658d9dd6b95 100644 --- a/negotiator/default.c +++ b/negotiator/default.c @@ -25,7 +25,7 @@ static void rev_list_push(struct negotiation_state *ns, if (!(commit->object.flags & mark)) { commit->object.flags |= mark; - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) return; prio_queue_put(&ns->rev_list, commit); @@ -69,7 +69,7 @@ static void mark_common(struct negotiation_state *ns, struct commit *commit, if (!ancestors_only && !(o->flags & POPPED)) ns->non_common_revs--; if (!o->parsed && !dont_parse) - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) return; for (parents = commit->parents; @@ -96,7 +96,7 @@ static const struct object_id *get_rev(struct negotiation_state *ns) return NULL; commit = prio_queue_get(&ns->rev_list); - parse_commit(commit); + repo_parse_commit(the_repository, commit); parents = commit->parents; commit->object.flags |= POPPED; diff --git a/negotiator/skipping.c b/negotiator/skipping.c index 264acf8bbea..c4de512e6e6 100644 --- a/negotiator/skipping.c +++ b/negotiator/skipping.c @@ -184,7 +184,7 @@ static const struct object_id *get_rev(struct data *data) if (!(commit->object.flags & COMMON) && !entry->ttl) to_send = commit; - parse_commit(commit); + repo_parse_commit(the_repository, commit); for (p = commit->parents; p; p = p->next) parent_pushed |= push_parent(data, entry, p->item); diff --git a/notes-merge.c b/notes-merge.c index 699edcfe105..d26c826963e 100644 --- a/notes-merge.c +++ b/notes-merge.c @@ -679,7 +679,8 @@ int notes_merge_commit(struct notes_merge_options *o, DIR *dir; struct dirent *e; struct strbuf path = STRBUF_INIT; - const char *buffer = get_commit_buffer(partial_commit, NULL); + const char *buffer = repo_get_commit_buffer(the_repository, + partial_commit, NULL); const char *msg = strstr(buffer, "\n\n"); int baselen; @@ -726,7 +727,7 @@ int notes_merge_commit(struct notes_merge_options *o, create_notes_commit(o->repo, partial_tree, partial_commit->parents, msg, strlen(msg), result_oid); - unuse_commit_buffer(partial_commit, buffer); + repo_unuse_commit_buffer(the_repository, partial_commit, buffer); if (o->verbosity >= 4) printf("Finalized notes merge commit: %s\n", oid_to_hex(result_oid)); diff --git a/notes-utils.c b/notes-utils.c index d7d18e30f5a..0550cfded86 100644 --- a/notes-utils.c +++ b/notes-utils.c @@ -23,7 +23,7 @@ void create_notes_commit(struct repository *r, struct object_id parent_oid; if (!read_ref(t->ref, &parent_oid)) { struct commit *parent = lookup_commit(r, &parent_oid); - if (parse_commit(parent)) + if (repo_parse_commit(the_repository, parent)) die("Failed to find/parse commit %s", t->ref); commit_list_insert(parent, &parents); } diff --git a/object-name.c b/object-name.c index 19ba23216a5..b297cbd0a18 100644 --- a/object-name.c +++ b/object-name.c @@ -1037,7 +1037,7 @@ static enum get_oid_result get_parent(struct repository *r, if (ret) return ret; commit = lookup_commit_reference(r, &oid); - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) return MISSING_OBJECT; if (!idx) { oidcpy(result, &commit->object.oid); @@ -1071,7 +1071,7 @@ static enum get_oid_result get_nth_ancestor(struct repository *r, return MISSING_OBJECT; while (generation--) { - if (parse_commit(commit) || !commit->parents) + if (repo_parse_commit(the_repository, commit) || !commit->parents) return MISSING_OBJECT; commit = commit->parents->item; } @@ -1362,10 +1362,10 @@ static int get_oid_oneline(struct repository *r, commit = pop_most_recent_commit(&list, ONELINE_SEEN); if (!parse_object(r, &commit->object.oid)) continue; - buf = get_commit_buffer(commit, NULL); + buf = repo_get_commit_buffer(the_repository, commit, NULL); p = strstr(buf, "\n\n"); matches = negative ^ (p && !regexec(®ex, p + 2, 0, NULL, 0)); - unuse_commit_buffer(commit, buf); + repo_unuse_commit_buffer(the_repository, commit, buf); if (matches) { oidcpy(oid, &commit->object.oid); diff --git a/pack-bitmap-write.c b/pack-bitmap-write.c index 891d9d2772e..a3cafa8e201 100644 --- a/pack-bitmap-write.c +++ b/pack-bitmap-write.c @@ -427,7 +427,8 @@ static int fill_bitmap_commit(struct bb_commit *ent, if (!found) return -1; bitmap_set(ent->bitmap, pos); - prio_queue_put(tree_queue, get_commit_tree(c)); + prio_queue_put(tree_queue, + repo_get_commit_tree(the_repository, c)); for (p = c->parents; p; p = p->next) { pos = find_object_pos(&p->item->object.oid, &found); diff --git a/pretty.c b/pretty.c index 05b557d0961..34e0a3bc786 100644 --- a/pretty.c +++ b/pretty.c @@ -2207,7 +2207,8 @@ void pretty_print_commit(struct pretty_print_context *pp, } encoding = get_log_output_encoding(); - msg = reencoded = logmsg_reencode(commit, NULL, encoding); + msg = reencoded = repo_logmsg_reencode(the_repository, commit, NULL, + encoding); if (pp->fmt == CMIT_FMT_ONELINE || cmit_fmt_is_mail(pp->fmt)) indent = 0; @@ -2264,7 +2265,7 @@ void pretty_print_commit(struct pretty_print_context *pp, if (cmit_fmt_is_mail(pp->fmt) && sb->len <= beginning_of_body) strbuf_addch(sb, '\n'); - unuse_commit_buffer(commit, reencoded); + repo_unuse_commit_buffer(the_repository, commit, reencoded); } void pp_commit_easy(enum cmit_fmt fmt, const struct commit *commit, diff --git a/reflog.c b/reflog.c index 04630f56ec6..6e8362e7a2f 100644 --- a/reflog.c +++ b/reflog.c @@ -186,7 +186,7 @@ static void mark_reachable(struct expire_reflog_policy_cb *cb) struct commit *commit = pop_commit(&pending); if (commit->object.flags & REACHABLE) continue; - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) continue; commit->object.flags |= REACHABLE; if (commit->date < expire_limit) { diff --git a/revision.c b/revision.c index b6a1b47c306..8f22b7b06dc 100644 --- a/revision.c +++ b/revision.c @@ -780,8 +780,8 @@ static int check_maybe_different_in_bloom_filter(struct rev_info *revs, static int rev_compare_tree(struct rev_info *revs, struct commit *parent, struct commit *commit, int nth_parent) { - struct tree *t1 = get_commit_tree(parent); - struct tree *t2 = get_commit_tree(commit); + struct tree *t1 = repo_get_commit_tree(the_repository, parent); + struct tree *t2 = repo_get_commit_tree(the_repository, commit); int bloom_ret = 1; if (!t1) @@ -827,7 +827,7 @@ static int rev_compare_tree(struct rev_info *revs, static int rev_same_tree_as_empty(struct rev_info *revs, struct commit *commit) { - struct tree *t1 = get_commit_tree(commit); + struct tree *t1 = repo_get_commit_tree(the_repository, commit); if (!t1) return 0; @@ -965,7 +965,7 @@ static void try_to_simplify_commit(struct rev_info *revs, struct commit *commit) if (!revs->prune) return; - if (!get_commit_tree(commit)) + if (!repo_get_commit_tree(the_repository, commit)) return; if (!commit->parents) { @@ -3881,7 +3881,7 @@ static int commit_match(struct commit *commit, struct rev_info *opt) * in it. */ encoding = get_log_output_encoding(); - message = logmsg_reencode(commit, NULL, encoding); + message = repo_logmsg_reencode(the_repository, commit, NULL, encoding); /* Copy the commit to temporary if we are using "fake" headers */ if (buf.len) @@ -3917,7 +3917,7 @@ static int commit_match(struct commit *commit, struct rev_info *opt) retval = grep_buffer(&opt->grep_filter, (char *)message, strlen(message)); strbuf_release(&buf); - unuse_commit_buffer(commit, message); + repo_unuse_commit_buffer(the_repository, commit, message); return retval; } diff --git a/sequencer.c b/sequencer.c index 3578dc25510..749455a2597 100644 --- a/sequencer.c +++ b/sequencer.c @@ -426,7 +426,8 @@ static int get_message(struct commit *commit, struct commit_message *out) const char *abbrev, *subject; int subject_len; - out->message = logmsg_reencode(commit, NULL, get_commit_output_encoding()); + out->message = repo_logmsg_reencode(the_repository, commit, NULL, + get_commit_output_encoding()); abbrev = short_commit_name(commit); subject_len = find_commit_subject(out->message, &subject); @@ -443,7 +444,7 @@ static void free_message(struct commit *commit, struct commit_message *msg) free(msg->parent_label); free(msg->label); free(msg->subject); - unuse_commit_buffer(commit, msg->message); + repo_unuse_commit_buffer(the_repository, commit, msg->message); } static void print_advice(struct repository *r, int show_hint, @@ -691,8 +692,8 @@ static int do_recursive_merge(struct repository *r, o.show_rename_progress = 1; head_tree = parse_tree_indirect(head); - next_tree = next ? get_commit_tree(next) : empty_tree(r); - base_tree = base ? get_commit_tree(base) : empty_tree(r); + next_tree = next ? repo_get_commit_tree(the_repository, next) : empty_tree(r); + base_tree = base ? repo_get_commit_tree(the_repository, base) : empty_tree(r); for (i = 0; i < opts->xopts_nr; i++) parse_merge_opt(&o, opts->xopts[i]); @@ -770,7 +771,7 @@ static int is_index_unchanged(struct repository *r) * the commit is invalid, parse_commit() will complain. So * there is nothing for us to say here. Just return failure. */ - if (parse_commit(head_commit)) + if (repo_parse_commit(the_repository, head_commit)) return -1; if (!(cache_tree_oid = get_cache_tree_oid(istate))) @@ -1335,7 +1336,7 @@ void print_commit_summary(struct repository *r, commit = lookup_commit(r, oid); if (!commit) die(_("couldn't look up newly created commit")); - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) die(_("could not parse newly created commit")); strbuf_addstr(&format, "format:%h] %s"); @@ -1415,7 +1416,7 @@ static int parse_head(struct repository *r, struct commit **head) warning(_("HEAD %s is not a commit!"), oid_to_hex(&oid)); } - if (parse_commit(current_head)) + if (repo_parse_commit(the_repository, current_head)) return error(_("could not parse HEAD commit")); } *head = current_head; @@ -1458,8 +1459,9 @@ static int try_to_commit(struct repository *r, if (flags & AMEND_MSG) { const char *exclude_gpgsig[] = { "gpgsig", "gpgsig-sha256", NULL }; const char *out_enc = get_commit_output_encoding(); - const char *message = logmsg_reencode(current_head, NULL, - out_enc); + const char *message = repo_logmsg_reencode(the_repository, + current_head, NULL, + out_enc); if (!msg) { const char *orig_message = NULL; @@ -1470,7 +1472,8 @@ static int try_to_commit(struct repository *r, hook_commit = "HEAD"; } author = amend_author = get_author(message); - unuse_commit_buffer(current_head, message); + repo_unuse_commit_buffer(the_repository, current_head, + message); if (!author) { res = error(_("unable to parse commit author")); goto out; @@ -1667,12 +1670,12 @@ static int is_original_commit_empty(struct commit *commit) { const struct object_id *ptree_oid; - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) return error(_("could not parse commit %s"), oid_to_hex(&commit->object.oid)); if (commit->parents) { struct commit *parent = commit->parents->item; - if (parse_commit(parent)) + if (repo_parse_commit(the_repository, parent)) return error(_("could not parse parent commit %s"), oid_to_hex(&parent->object.oid)); ptree_oid = get_commit_tree_oid(parent); @@ -2000,13 +2003,14 @@ static int update_squash_messages(struct repository *r, return error(_("need a HEAD to fixup")); if (!(head_commit = lookup_commit_reference(r, &head))) return error(_("could not read HEAD")); - if (!(head_message = logmsg_reencode(head_commit, NULL, encoding))) + if (!(head_message = repo_logmsg_reencode(the_repository, head_commit, NULL, encoding))) return error(_("could not read HEAD's commit message")); find_commit_subject(head_message, &body); if (command == TODO_FIXUP && !flag && write_message(body, strlen(body), rebase_path_fixup_msg(), 0) < 0) { - unuse_commit_buffer(head_commit, head_message); + repo_unuse_commit_buffer(the_repository, head_commit, + head_message); return error(_("cannot write '%s'"), rebase_path_fixup_msg()); } strbuf_addf(&buf, "%c ", comment_line_char); @@ -2021,10 +2025,11 @@ static int update_squash_messages(struct repository *r, else strbuf_addstr(&buf, body); - unuse_commit_buffer(head_commit, head_message); + repo_unuse_commit_buffer(the_repository, head_commit, + head_message); } - if (!(message = logmsg_reencode(commit, NULL, encoding))) + if (!(message = repo_logmsg_reencode(the_repository, commit, NULL, encoding))) return error(_("could not read commit message of %s"), oid_to_hex(&commit->object.oid)); find_commit_subject(message, &body); @@ -2039,7 +2044,7 @@ static int update_squash_messages(struct repository *r, strbuf_add_commented_lines(&buf, body, strlen(body)); } else return error(_("unknown command: %d"), command); - unuse_commit_buffer(commit, message); + repo_unuse_commit_buffer(the_repository, commit, message); if (!res) res = write_message(buf.buf, buf.len, rebase_path_squash_msg(), @@ -2213,7 +2218,7 @@ static int do_pick_commit(struct repository *r, msg_file = NULL; goto fast_forward_edit; } - if (parent && parse_commit(parent) < 0) + if (parent && repo_parse_commit(the_repository, parent) < 0) /* TRANSLATORS: The first %s will be a "todo" command like "revert" or "pick", the second %s a SHA1. */ return error(_("%s: cannot parse parent commit %s"), @@ -3126,7 +3131,9 @@ static int walk_revs_populate_todo(struct todo_list *todo_list, while ((commit = get_revision(opts->revs))) { struct todo_item *item = append_new_todo(todo_list); - const char *commit_buffer = logmsg_reencode(commit, NULL, encoding); + const char *commit_buffer = repo_logmsg_reencode(the_repository, + commit, NULL, + encoding); const char *subject; int subject_len; @@ -3138,7 +3145,8 @@ static int walk_revs_populate_todo(struct todo_list *todo_list, subject_len = find_commit_subject(commit_buffer, &subject); strbuf_addf(&todo_list->buf, "%s %s %.*s\n", command_string, short_commit_name(commit), subject_len, subject); - unuse_commit_buffer(commit, commit_buffer); + repo_unuse_commit_buffer(the_repository, commit, + commit_buffer); } if (!todo_list->nr) @@ -3522,10 +3530,13 @@ static int make_patch(struct repository *r, strbuf_addf(&buf, "%s/message", get_dir(opts)); if (!file_exists(buf.buf)) { const char *encoding = get_commit_output_encoding(); - const char *commit_buffer = logmsg_reencode(commit, NULL, encoding); + const char *commit_buffer = repo_logmsg_reencode(the_repository, + commit, NULL, + encoding); find_commit_subject(commit_buffer, &subject); res |= write_message(subject, strlen(subject), buf.buf, 1); - unuse_commit_buffer(commit, commit_buffer); + repo_unuse_commit_buffer(the_repository, commit, + commit_buffer); } strbuf_release(&buf); release_revisions(&log_tree_opt); @@ -3992,7 +4003,9 @@ static int do_merge(struct repository *r, if (commit) { const char *encoding = get_commit_output_encoding(); - const char *message = logmsg_reencode(commit, NULL, encoding); + const char *message = repo_logmsg_reencode(the_repository, + commit, NULL, + encoding); const char *body; int len; @@ -4005,7 +4018,7 @@ static int do_merge(struct repository *r, find_commit_subject(message, &body); len = strlen(body); ret = write_message(body, len, git_path_merge_msg(r), 0); - unuse_commit_buffer(commit, message); + repo_unuse_commit_buffer(the_repository, commit, message); if (ret) { error_errno(_("could not write '%s'"), git_path_merge_msg(r)); @@ -4588,7 +4601,7 @@ static int stopped_at_head(struct repository *r) if (repo_get_oid(the_repository, "HEAD", &head) || !(commit = lookup_commit(r, &head)) || - parse_commit(commit) || get_message(commit, &message)) + repo_parse_commit(the_repository, commit) || get_message(commit, &message)) fprintf(stderr, _("Stopped at HEAD\n")); else { fprintf(stderr, _("Stopped at %s\n"), message.label); @@ -5045,13 +5058,15 @@ static int commit_staged_changes(struct repository *r, const char *encoding = get_commit_output_encoding(); if (parse_head(r, &commit) || - !(p = logmsg_reencode(commit, NULL, encoding)) || + !(p = repo_logmsg_reencode(the_repository, commit, NULL, encoding)) || write_message(p, strlen(p), path, 0)) { - unuse_commit_buffer(commit, p); + repo_unuse_commit_buffer(the_repository, + commit, p); return error(_("could not write file: " "'%s'"), path); } - unuse_commit_buffer(commit, p); + repo_unuse_commit_buffer(the_repository, + commit, p); } } @@ -5928,7 +5943,7 @@ static int skip_unnecessary_picks(struct repository *r, continue; if (item->command != TODO_PICK) break; - if (parse_commit(item->commit)) { + if (repo_parse_commit(the_repository, item->commit)) { return error(_("could not parse commit '%s'"), oid_to_hex(&item->commit->object.oid)); } @@ -6261,12 +6276,15 @@ int todo_list_rearrange_squash(struct todo_list *todo_list) return error(_("the script was already rearranged.")); } - parse_commit(item->commit); - commit_buffer = logmsg_reencode(item->commit, NULL, "UTF-8"); + repo_parse_commit(the_repository, item->commit); + commit_buffer = repo_logmsg_reencode(the_repository, + item->commit, NULL, + "UTF-8"); find_commit_subject(commit_buffer, &subject); format_subject(&buf, subject, " "); subject = subjects[i] = strbuf_detach(&buf, &subject_len); - unuse_commit_buffer(item->commit, commit_buffer); + repo_unuse_commit_buffer(the_repository, item->commit, + commit_buffer); if (skip_fixupish(subject, &p)) { struct commit *commit2; diff --git a/shallow.c b/shallow.c index db9856ef8ad..138bcfe009c 100644 --- a/shallow.c +++ b/shallow.c @@ -249,7 +249,7 @@ struct commit_list *get_shallow_commits_by_rev_list(int ac, const char **av, struct commit *c = p->item; struct commit_list *parent; - if (parse_commit(c)) + if (repo_parse_commit(the_repository, c)) die("unable to parse commit %s", oid_to_hex(&c->object.oid)); @@ -585,7 +585,7 @@ static void paint_down(struct paint_info *info, const struct object_id *oid, if (c->object.flags & BOTTOM) continue; - if (parse_commit(c)) + if (repo_parse_commit(the_repository, c)) die("unable to parse commit %s", oid_to_hex(&c->object.oid)); diff --git a/t/helper/test-fast-rebase.c b/t/helper/test-fast-rebase.c index 3f8d5761780..e07448c1a17 100644 --- a/t/helper/test-fast-rebase.c +++ b/t/helper/test-fast-rebase.c @@ -66,7 +66,8 @@ static struct commit *create_commit(struct tree *tree, struct commit_extra_header *extra; struct strbuf msg = STRBUF_INIT; const char *out_enc = get_commit_output_encoding(); - const char *message = logmsg_reencode(based_on, NULL, out_enc); + const char *message = repo_logmsg_reencode(the_repository, based_on, + NULL, out_enc); const char *orig_message = NULL; const char *exclude_gpgsig[] = { "gpgsig", NULL }; @@ -157,7 +158,7 @@ int cmd__fast_rebase(int argc, const char **argv) memset(&result, 0, sizeof(result)); merge_opt.show_rename_progress = 1; merge_opt.branch1 = "HEAD"; - head_tree = get_commit_tree(onto); + head_tree = repo_get_commit_tree(the_repository, onto); result.tree = head_tree; last_commit = onto; while ((commit = get_revision(&revs))) { @@ -168,8 +169,8 @@ int cmd__fast_rebase(int argc, const char **argv) assert(commit->parents && !commit->parents->next); base = commit->parents->item; - next_tree = get_commit_tree(commit); - base_tree = get_commit_tree(base); + next_tree = repo_get_commit_tree(the_repository, commit); + base_tree = repo_get_commit_tree(the_repository, base); merge_opt.branch2 = short_commit_name(commit); merge_opt.ancestor = xstrfmt("parent of %s", merge_opt.branch2); diff --git a/tree.c b/tree.c index 76a6534f678..e33f4009ac9 100644 --- a/tree.c +++ b/tree.c @@ -59,7 +59,7 @@ int read_tree_at(struct repository *r, oid_to_hex(&entry.oid), base->buf, entry.path); - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) die("Invalid commit %s in submodule path %s%s", oid_to_hex(&entry.oid), base->buf, entry.path); diff --git a/walker.c b/walker.c index c0469363789..5275070de76 100644 --- a/walker.c +++ b/walker.c @@ -80,7 +80,7 @@ static int process_commit(struct walker *walker, struct commit *commit) { struct commit_list *parents; - if (parse_commit(commit)) + if (repo_parse_commit(the_repository, commit)) return -1; while (complete && complete->item->date >= commit->date) { @@ -94,7 +94,7 @@ static int process_commit(struct walker *walker, struct commit *commit) walker_say(walker, "walk %s\n", oid_to_hex(&commit->object.oid)); - if (process(walker, &get_commit_tree(commit)->object)) + if (process(walker, &repo_get_commit_tree(the_repository, commit)->object)) return -1; for (parents = commit->parents; parents; parents = parents->next) { From patchwork Tue Mar 28 13:58:49 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191112 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 90C27C761AF for ; Tue, 28 Mar 2023 13:59:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232795AbjC1N7j (ORCPT ); Tue, 28 Mar 2023 09:59:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39286 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232952AbjC1N71 (ORCPT ); Tue, 28 Mar 2023 09:59:27 -0400 Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com [IPv6:2a00:1450:4864:20::32d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6E7AF8A43 for ; Tue, 28 Mar 2023 06:59:18 -0700 (PDT) Received: by mail-wm1-x32d.google.com with SMTP id l15-20020a05600c4f0f00b003ef6d684102so4180185wmq.3 for ; Tue, 28 Mar 2023 06:59:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011956; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=cWHT2kh3ZFpi/r4bvNNzwpJ/TtB6ZvkE8GU/A2YxOyU=; b=GF6lW0h7/5u5GszGYRRc3QiaalECKrrQmHrJXVjevFMSWODhr8eGsKG1yLk0pNMLoD 3kuUvVlOwfbrQ2tbr6bjF+W17ywX/VS0Fc2oCd8OWWG2ITqNmxq++9Qs/w4FYl97cxyF WYrUeIl8hO59bZfZQXuqhior2yFK08xyy7NwCn184Zom6s9vt22PynfMWkysJixcp+Ip dwoxIxAerIU9WSW78+nO3JFyNPaizsiVX6jn/rDFomOFew3j0R8rVAdoOM/nWtvwWme+ 8zW+hhxLVl3YcVmpHPNhFgqmPUBv08m4XbKIOMYVad2EQbgUlRncumeE1Y8czBtiNfMC j9Eg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011956; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cWHT2kh3ZFpi/r4bvNNzwpJ/TtB6ZvkE8GU/A2YxOyU=; b=baIXMJs/V1q3WBsd8kPqaVeHFzyeGOeUjyrxhCtrnblKiHTSFfVg/w3aLOfXaUxY0b oEFAkpzCvE8u+TQbH8/4uaxXsxAVSfQxdMo+sdasMy5vUEd9/NitKcKwHCrFsq5ilhf4 lpMihXACaJSUS3yhVOPIQnqpBA7kjWfPuyUdakam+l11PTgOax9H+hbbmPa5qT9F4fXm p6Bb4C0RVxA/2GZ085PmQJ2ZrIueBjgIipqwcjiaAMkHubk4xTM3mg0bcoLsAeSrU1Dv S4gQahIthoAo43wh3m+phWKGh3qmD/93Qdz3g48QSJVB2o+u9k38jgTjddaM+m+XUgdy hdhA== X-Gm-Message-State: AO0yUKV4ogJHJ668WbARVYm4tGLfc0PNgbo43rJbaCsLgPMfzy3JXosN Xgkd/R9Vjtai1/MWsC5ui8pEZVJPRfwsag== X-Google-Smtp-Source: AK7set94AVqM97O8ODtsR5tjMAI0s0BzwaJp9fwUm7ZOaoNQreVW3tVeXjP2DznCL2900TAB26SpHQ== X-Received: by 2002:a05:600c:5251:b0:3ee:9652:932 with SMTP id fc17-20020a05600c525100b003ee96520932mr13675884wmb.12.1680011956242; Tue, 28 Mar 2023 06:59:16 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:15 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 08/17] cocci: apply the "diff.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:49 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "diff.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- builtin/log.c | 2 +- builtin/rebase.c | 2 +- builtin/stash.c | 2 +- contrib/coccinelle/the_repository.cocci | 4 ++++ contrib/coccinelle/the_repository.pending.cocci | 4 ---- diff.h | 3 --- log-tree.c | 2 +- range-diff.c | 2 +- 8 files changed, 9 insertions(+), 12 deletions(-) diff --git a/builtin/log.c b/builtin/log.c index a55325025a4..11ba99d6b48 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -1385,7 +1385,7 @@ static void make_cover_letter(struct rev_info *rev, int use_separate_file, .other_arg = &other_arg }; - diff_setup(&opts); + repo_diff_setup(the_repository, &opts); opts.file = rev->diffopt.file; opts.use_color = rev->diffopt.use_color; diff_setup_done(&opts); diff --git a/builtin/rebase.c b/builtin/rebase.c index 3e2cdabfda5..80a5b7486f8 100644 --- a/builtin/rebase.c +++ b/builtin/rebase.c @@ -1787,7 +1787,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix) } /* We want color (if set), but no pager */ - diff_setup(&opts); + repo_diff_setup(the_repository, &opts); opts.stat_width = -1; /* use full terminal width */ opts.stat_graph_width = -1; /* respect statGraphWidth config */ opts.output_format |= diff --git a/builtin/stash.c b/builtin/stash.c index dd5f67e7e6e..447c3b678f3 100644 --- a/builtin/stash.c +++ b/builtin/stash.c @@ -428,7 +428,7 @@ static void unstage_changes_unless_new(struct object_id *orig_tree) * to the index before a merge was run) and the current index * (reflecting the changes brought in by the merge). */ - diff_setup(&diff_opts); + repo_diff_setup(the_repository, &diff_opts); diff_opts.flags.recursive = 1; diff_opts.detect_rename = 0; diff_opts.output_format = DIFF_FORMAT_NO_OUTPUT; diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index 0cdf3f46304..3c0bd8781e7 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -73,6 +73,10 @@ | - get_commit_tree + repo_get_commit_tree +// diff.h +| +- diff_setup ++ repo_diff_setup ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index bf19e6a2487..00461ee86b3 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,11 +5,7 @@ @@ @@ ( -// diff.h -- diff_setup -+ repo_diff_setup // object-store.h -| - read_object_file + repo_read_object_file | diff --git a/diff.h b/diff.h index 09627f6e84a..c759bedc269 100644 --- a/diff.h +++ b/diff.h @@ -536,9 +536,6 @@ int git_diff_basic_config(const char *var, const char *value, void *cb); int git_diff_heuristic_config(const char *var, const char *value, void *cb); void init_diff_ui_defaults(void); int git_diff_ui_config(const char *var, const char *value, void *cb); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define diff_setup(diffopts) repo_diff_setup(the_repository, diffopts) -#endif void repo_diff_setup(struct repository *, struct diff_options *); struct option *add_diff_options(const struct option *, struct diff_options *); int diff_opt_parse(struct diff_options *, const char **, int, const char *); diff --git a/log-tree.c b/log-tree.c index 97d374c76d6..5c97bc403fb 100644 --- a/log-tree.c +++ b/log-tree.c @@ -852,7 +852,7 @@ void show_log(struct rev_info *opt) * Pass minimum required diff-options to range-diff; others * can be added later if deemed desirable. */ - diff_setup(&opts); + repo_diff_setup(the_repository, &opts); opts.file = opt->diffopt.file; opts.use_color = opt->diffopt.use_color; diff_setup_done(&opts); diff --git a/range-diff.c b/range-diff.c index 5bcf966f6c5..15d0bc35a87 100644 --- a/range-diff.c +++ b/range-diff.c @@ -485,7 +485,7 @@ static void output(struct string_list *a, struct string_list *b, if (range_diff_opts->diffopt) memcpy(&opts, range_diff_opts->diffopt, sizeof(opts)); else - diff_setup(&opts); + repo_diff_setup(the_repository, &opts); opts.no_free = 1; if (!opts.output_format) From patchwork Tue Mar 28 13:58:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191118 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 53BE4C761AF for ; Tue, 28 Mar 2023 14:00:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232744AbjC1OAL (ORCPT ); Tue, 28 Mar 2023 10:00:11 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39504 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233079AbjC1N7f (ORCPT ); Tue, 28 Mar 2023 09:59:35 -0400 Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [IPv6:2a00:1450:4864:20::336]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D5682C65A for ; Tue, 28 Mar 2023 06:59:19 -0700 (PDT) Received: by mail-wm1-x336.google.com with SMTP id o24-20020a05600c511800b003ef59905f26so7501617wms.2 for ; Tue, 28 Mar 2023 06:59:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011958; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=w5HdgbCf0+5SA+dAZehBkI8l2FvgV46ofCTAHSXfZ/g=; b=FFBgPtPBhJ1usOsxHNT+IE5lYgq6zfgCeFkDIU2cvZG0tfw8n97E6bB1Cx43TOCSXF UanwhNJV6c3Cq/3QlIe7w+iSynDwQsw13jxRbZ0JGi7dvaShZXl9zZLgISWg/5lwJvbO 1Z0AR19gZqgW6LlH8BYmHjpZmZ1zrAw0zLpDasA1Oy207wb8QJWug26H+WfDgEgkYRX5 OuCKIhbeONRM3DX+OWoThpizwr7KT92WHW6/KG+uXPykklcigUFPmlMJ8oB8AYIThR8C NrzslbxMZGbm6s2F+DiNAtl5Uwy9sTo0tPSkA/Un8YSDZKiGTqqAz5My9JJaWjuSMnCA 1ziA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011958; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=w5HdgbCf0+5SA+dAZehBkI8l2FvgV46ofCTAHSXfZ/g=; b=yNiQTucel3qn9QQQTQpOgBxNpE1jmSf4L4gNv0gEKTHv7CMNHaW/Pm/Ru7KBp08udE F3Tg/wADxKIFVUrrz/tFv0ndrYrVqX3QxfsNovBVZXJo/BUE77V/+JmeE+dbxbezZ3bh xsHG+5rRTo7m55LxSlxJL2z8DEGUUA9Yw+WtvthYY+HXP1GlIOvtmRfQvNbE23KW235r J8YZPOVuWh5EodKWSfLIGSYiveW5uduJoBiEWLkr/jEfb6f8l1vY6hWHQkVOIzmTuLUv 3F938x3anVg8jb6F+G3JuLoN5nJEBwD0TM2fh1SVQRWgLIYbzCBbSuVU/3BF72xChs3T FbqA== X-Gm-Message-State: AO0yUKW43Bh7xvFBizb4xOk+9bVPHBN4NpUgxfBM6tt9j8BVJW1Thrwi jf0sj3Jf+Ix1aLBTxei1CcTMQDn7Kn3tpw== X-Google-Smtp-Source: AK7set9dqylrFBjgCF6gNYiZCq1BZ56YCSqOLwIg8QrHaCFO8SBOYOHp6pQshQuMGz0t5SyBde2D7Q== X-Received: by 2002:a1c:ed02:0:b0:3eb:38e6:f650 with SMTP id l2-20020a1ced02000000b003eb38e6f650mr11387147wmh.41.1680011957230; Tue, 28 Mar 2023 06:59:17 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:16 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 09/17] cocci: apply the "object-store.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:50 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "object-store.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- apply.c | 9 +++++--- archive.c | 2 +- bisect.c | 5 ++-- blame.c | 11 +++++---- builtin/cat-file.c | 23 +++++++++++-------- builtin/clone.c | 6 ++--- builtin/difftool.c | 3 ++- builtin/fast-export.c | 5 ++-- builtin/fast-import.c | 7 +++--- builtin/fetch.c | 12 +++++----- builtin/grep.c | 6 +++-- builtin/index-pack.c | 9 +++++--- builtin/log.c | 2 +- builtin/merge-tree.c | 9 +++++--- builtin/mktag.c | 3 ++- builtin/notes.c | 7 +++--- builtin/pack-objects.c | 22 ++++++++++++------ builtin/receive-pack.c | 2 +- builtin/remote.c | 2 +- builtin/show-ref.c | 2 +- builtin/tag.c | 4 ++-- builtin/unpack-file.c | 2 +- builtin/unpack-objects.c | 5 ++-- bulk-checkin.c | 2 +- bundle.c | 2 +- cache-tree.c | 8 +++---- combine-diff.c | 2 +- commit.c | 3 ++- contrib/coccinelle/the_repository.cocci | 10 ++++++++ .../coccinelle/the_repository.pending.cocci | 10 -------- dir.c | 2 +- entry.c | 3 ++- fetch-pack.c | 8 +++---- fmt-merge-msg.c | 3 ++- fsck.c | 2 +- http-push.c | 11 +++++---- http-walker.c | 4 ++-- list-objects.c | 2 +- mailmap.c | 2 +- match-trees.c | 4 ++-- merge-blobs.c | 6 +++-- merge-ort.c | 2 +- merge-recursive.c | 5 ++-- notes-cache.c | 2 +- notes-merge.c | 2 +- notes.c | 12 ++++++---- object-file.c | 2 +- object-store.h | 7 ------ read-cache.c | 5 ++-- reflog.c | 5 ++-- remote.c | 2 +- rerere.c | 5 ++-- send-pack.c | 6 ++--- shallow.c | 6 ++--- submodule-config.c | 3 ++- tag.c | 5 ++-- tree.c | 3 ++- upload-pack.c | 8 +++---- walker.c | 2 +- xdiff-interface.c | 2 +- 60 files changed, 184 insertions(+), 142 deletions(-) diff --git a/apply.c b/apply.c index ed6abc7722f..23789bb2d12 100644 --- a/apply.c +++ b/apply.c @@ -3203,7 +3203,8 @@ static int apply_binary(struct apply_state *state, unsigned long size; char *result; - result = read_object_file(&oid, &type, &size); + result = repo_read_object_file(the_repository, &oid, &type, + &size); if (!result) return error(_("the necessary postimage %s for " "'%s' cannot be read"), @@ -3266,7 +3267,8 @@ static int read_blob_object(struct strbuf *buf, const struct object_id *oid, uns unsigned long sz; char *result; - result = read_object_file(oid, &type, &sz); + result = repo_read_object_file(the_repository, oid, &type, + &sz); if (!result) return -1; /* XXX read_sha1_file NUL-terminates */ @@ -3494,7 +3496,8 @@ static int resolve_to(struct image *image, const struct object_id *result_id) clear_image(image); - image->buf = read_object_file(result_id, &type, &size); + image->buf = repo_read_object_file(the_repository, result_id, &type, + &size); if (!image->buf || type != OBJ_BLOB) die("unable to read blob object %s", oid_to_hex(result_id)); image->len = size; diff --git a/archive.c b/archive.c index cb7ca69cce1..c6eaa6d6146 100644 --- a/archive.c +++ b/archive.c @@ -86,7 +86,7 @@ static void *object_file_to_archive(const struct archiver_args *args, (args->tree ? &args->tree->object.oid : NULL), oid); path += args->baselen; - buffer = read_object_file(oid, type, sizep); + buffer = repo_read_object_file(the_repository, oid, type, sizep); if (buffer && S_ISREG(mode)) { struct strbuf buf = STRBUF_INIT; size_t size = 0; diff --git a/bisect.c b/bisect.c index b1639a9de7f..5998e4b2e32 100644 --- a/bisect.c +++ b/bisect.c @@ -149,8 +149,9 @@ static void show_list(const char *debug, int counted, int nr, unsigned commit_flags = commit->object.flags; enum object_type type; unsigned long size; - char *buf = read_object_file(&commit->object.oid, &type, - &size); + char *buf = repo_read_object_file(the_repository, + &commit->object.oid, &type, + &size); const char *subject_start; int subject_len; diff --git a/blame.c b/blame.c index 0f2751de83b..c42ceea5ae1 100644 --- a/blame.c +++ b/blame.c @@ -1029,8 +1029,9 @@ static void fill_origin_blob(struct diff_options *opt, &o->blob_oid, 1, &file->ptr, &file_size)) ; else - file->ptr = read_object_file(&o->blob_oid, &type, - &file_size); + file->ptr = repo_read_object_file(the_repository, + &o->blob_oid, &type, + &file_size); file->size = file_size; if (!file->ptr) @@ -2839,8 +2840,10 @@ void setup_scoreboard(struct blame_scoreboard *sb, &sb->final_buf_size)) ; else - sb->final_buf = read_object_file(&o->blob_oid, &type, - &sb->final_buf_size); + sb->final_buf = repo_read_object_file(the_repository, + &o->blob_oid, + &type, + &sb->final_buf_size); if (!sb->final_buf) die(_("cannot read blob %s for path %s"), diff --git a/builtin/cat-file.c b/builtin/cat-file.c index 9e7e03ade41..a7bcb55b40d 100644 --- a/builtin/cat-file.c +++ b/builtin/cat-file.c @@ -64,7 +64,7 @@ static int filter_object(const char *path, unsigned mode, { enum object_type type; - *buf = read_object_file(oid, &type, size); + *buf = repo_read_object_file(the_repository, oid, &type, size); if (!*buf) return error(_("cannot read object %s '%s'"), oid_to_hex(oid), path); @@ -156,7 +156,7 @@ static int cat_one_file(int opt, const char *exp_type, const char *obj_name, goto cleanup; case 'e': - return !has_object_file(&oid); + return !repo_has_object_file(the_repository, &oid); case 'w': @@ -191,7 +191,8 @@ static int cat_one_file(int opt, const char *exp_type, const char *obj_name, ret = stream_blob(&oid); goto cleanup; } - buf = read_object_file(&oid, &type, &size); + buf = repo_read_object_file(the_repository, &oid, &type, + &size); if (!buf) die("Cannot read object %s", obj_name); @@ -211,8 +212,10 @@ static int cat_one_file(int opt, const char *exp_type, const char *obj_name, if (exp_type_id == OBJ_BLOB) { struct object_id blob_oid; if (oid_object_info(the_repository, &oid, NULL) == OBJ_TAG) { - char *buffer = read_object_file(&oid, &type, - &size); + char *buffer = repo_read_object_file(the_repository, + &oid, + &type, + &size); const char *target; if (!skip_prefix(buffer, "object ", &target) || get_oid_hex(target, &blob_oid)) @@ -387,9 +390,10 @@ static void print_object_or_die(struct batch_options *opt, struct expand_data *d if (!textconv_object(the_repository, data->rest, 0100644, oid, 1, &contents, &size)) - contents = read_object_file(oid, - &type, - &size); + contents = repo_read_object_file(the_repository, + oid, + &type, + &size); if (!contents) die("could not convert '%s' %s", oid_to_hex(oid), data->rest); @@ -406,7 +410,8 @@ static void print_object_or_die(struct batch_options *opt, struct expand_data *d unsigned long size; void *contents; - contents = read_object_file(oid, &type, &size); + contents = repo_read_object_file(the_repository, oid, &type, + &size); if (use_mailmap) { size_t s = size; diff --git a/builtin/clone.c b/builtin/clone.c index 462c286274c..e50e7e2c06e 100644 --- a/builtin/clone.c +++ b/builtin/clone.c @@ -548,9 +548,9 @@ static void write_followtags(const struct ref *refs, const char *msg) continue; if (ends_with(ref->name, "^{}")) continue; - if (!has_object_file_with_flags(&ref->old_oid, - OBJECT_INFO_QUICK | - OBJECT_INFO_SKIP_FETCH_OBJECT)) + if (!repo_has_object_file_with_flags(the_repository, &ref->old_oid, + OBJECT_INFO_QUICK | + OBJECT_INFO_SKIP_FETCH_OBJECT)) continue; update_ref(msg, ref->name, &ref->old_oid, NULL, 0, UPDATE_REFS_DIE_ON_ERR); diff --git a/builtin/difftool.c b/builtin/difftool.c index 01681d0fb88..74466332b58 100644 --- a/builtin/difftool.c +++ b/builtin/difftool.c @@ -296,7 +296,8 @@ static char *get_symlink(const struct object_id *oid, const char *path) } else { enum object_type type; unsigned long size; - data = read_object_file(oid, &type, &size); + data = repo_read_object_file(the_repository, oid, &type, + &size); if (!data) die(_("could not read object %s for symlink %s"), oid_to_hex(oid), path); diff --git a/builtin/fast-export.c b/builtin/fast-export.c index fc5859dc9fa..166f51b100a 100644 --- a/builtin/fast-export.c +++ b/builtin/fast-export.c @@ -297,7 +297,7 @@ static void export_blob(const struct object_id *oid) object = (struct object *)lookup_blob(the_repository, oid); eaten = 0; } else { - buf = read_object_file(oid, &type, &size); + buf = repo_read_object_file(the_repository, oid, &type, &size); if (!buf) die("could not read blob %s", oid_to_hex(oid)); if (check_object_signature(the_repository, oid, buf, size, @@ -767,7 +767,8 @@ static void handle_tag(const char *name, struct tag *tag) return; } - buf = read_object_file(&tag->object.oid, &type, &size); + buf = repo_read_object_file(the_repository, &tag->object.oid, &type, + &size); if (!buf) die("could not read tag %s", oid_to_hex(&tag->object.oid)); message = memmem(buf, size, "\n\n", 2); diff --git a/builtin/fast-import.c b/builtin/fast-import.c index e4566490d91..7a7987b67de 100644 --- a/builtin/fast-import.c +++ b/builtin/fast-import.c @@ -1266,7 +1266,7 @@ static void load_tree(struct tree_entry *root) die("Can't load tree %s", oid_to_hex(oid)); } else { enum object_type type; - buf = read_object_file(oid, &type, &size); + buf = repo_read_object_file(the_repository, oid, &type, &size); if (!buf || type != OBJ_TREE) die("Can't load tree %s", oid_to_hex(oid)); } @@ -2937,7 +2937,7 @@ static void cat_blob(struct object_entry *oe, struct object_id *oid) char *buf; if (!oe || oe->pack_id == MAX_PACK_ID) { - buf = read_object_file(oid, &type, &size); + buf = repo_read_object_file(the_repository, oid, &type, &size); } else { type = oe->type; buf = gfi_unpack_entry(oe, &size); @@ -3045,7 +3045,8 @@ static struct object_entry *dereference(struct object_entry *oe, buf = gfi_unpack_entry(oe, &size); } else { enum object_type unused; - buf = read_object_file(oid, &unused, &size); + buf = repo_read_object_file(the_repository, oid, &unused, + &size); } if (!buf) die("Can't load object %s", oid_to_hex(oid)); diff --git a/builtin/fetch.c b/builtin/fetch.c index 16dc2a33cac..0ee5d269768 100644 --- a/builtin/fetch.c +++ b/builtin/fetch.c @@ -408,9 +408,9 @@ static void find_non_local_tags(const struct ref *refs, */ if (ends_with(ref->name, "^{}")) { if (item && - !has_object_file_with_flags(&ref->old_oid, quick_flags) && + !repo_has_object_file_with_flags(the_repository, &ref->old_oid, quick_flags) && !oidset_contains(&fetch_oids, &ref->old_oid) && - !has_object_file_with_flags(&item->oid, quick_flags) && + !repo_has_object_file_with_flags(the_repository, &item->oid, quick_flags) && !oidset_contains(&fetch_oids, &item->oid)) clear_item(item); item = NULL; @@ -424,7 +424,7 @@ static void find_non_local_tags(const struct ref *refs, * fetch. */ if (item && - !has_object_file_with_flags(&item->oid, quick_flags) && + !repo_has_object_file_with_flags(the_repository, &item->oid, quick_flags) && !oidset_contains(&fetch_oids, &item->oid)) clear_item(item); @@ -445,7 +445,7 @@ static void find_non_local_tags(const struct ref *refs, * checked to see if it needs fetching. */ if (item && - !has_object_file_with_flags(&item->oid, quick_flags) && + !repo_has_object_file_with_flags(the_repository, &item->oid, quick_flags) && !oidset_contains(&fetch_oids, &item->oid)) clear_item(item); @@ -1322,8 +1322,8 @@ static int check_exist_and_connected(struct ref *ref_map) * we need all direct targets to exist. */ for (r = rm; r; r = r->next) { - if (!has_object_file_with_flags(&r->old_oid, - OBJECT_INFO_SKIP_FETCH_OBJECT)) + if (!repo_has_object_file_with_flags(the_repository, &r->old_oid, + OBJECT_INFO_SKIP_FETCH_OBJECT)) return -1; } diff --git a/builtin/grep.c b/builtin/grep.c index c590fcb19dd..49fc0c69095 100644 --- a/builtin/grep.c +++ b/builtin/grep.c @@ -562,7 +562,8 @@ static int grep_cache(struct grep_opt *opt, void *data; unsigned long size; - data = read_object_file(&ce->oid, &type, &size); + data = repo_read_object_file(the_repository, &ce->oid, + &type, &size); init_tree_desc(&tree, data, size); hit |= grep_tree(opt, pathspec, &tree, &name, 0, 0); @@ -652,7 +653,8 @@ static int grep_tree(struct grep_opt *opt, const struct pathspec *pathspec, void *data; unsigned long size; - data = read_object_file(&entry.oid, &type, &size); + data = repo_read_object_file(the_repository, + &entry.oid, &type, &size); if (!data) die(_("unable to read tree (%s)"), oid_to_hex(&entry.oid)); diff --git a/builtin/index-pack.c b/builtin/index-pack.c index b451755f405..e823a73b357 100644 --- a/builtin/index-pack.c +++ b/builtin/index-pack.c @@ -804,7 +804,8 @@ static void sha1_object(const void *data, struct object_entry *obj_entry, if (startup_info->have_repository) { read_lock(); collision_test_needed = - has_object_file_with_flags(oid, OBJECT_INFO_QUICK); + repo_has_object_file_with_flags(the_repository, oid, + OBJECT_INFO_QUICK); read_unlock(); } @@ -824,7 +825,8 @@ static void sha1_object(const void *data, struct object_entry *obj_entry, die(_("cannot read existing object info %s"), oid_to_hex(oid)); if (has_type != type || has_size != size) die(_("SHA1 COLLISION FOUND WITH %s !"), oid_to_hex(oid)); - has_data = read_object_file(oid, &has_type, &has_size); + has_data = repo_read_object_file(the_repository, oid, + &has_type, &has_size); read_unlock(); if (!data) data = new_data = get_data_from_pack(obj_entry); @@ -1417,7 +1419,8 @@ static void fix_unresolved_deltas(struct hashfile *f) if (objects[d->obj_no].real_type != OBJ_REF_DELTA) continue; - data = read_object_file(&d->oid, &type, &size); + data = repo_read_object_file(the_repository, &d->oid, &type, + &size); if (!data) continue; diff --git a/builtin/log.c b/builtin/log.c index 11ba99d6b48..28085547aa8 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -676,7 +676,7 @@ static int show_tag_object(const struct object_id *oid, struct rev_info *rev) { unsigned long size; enum object_type type; - char *buf = read_object_file(oid, &type, &size); + char *buf = repo_read_object_file(the_repository, oid, &type, &size); int offset = 0; if (!buf) diff --git a/builtin/merge-tree.c b/builtin/merge-tree.c index dd23ee684c7..590532706eb 100644 --- a/builtin/merge-tree.c +++ b/builtin/merge-tree.c @@ -70,7 +70,9 @@ static void *result(struct merge_list *entry, unsigned long *size) const char *path = entry->path; if (!entry->stage) - return read_object_file(&entry->blob->object.oid, &type, size); + return repo_read_object_file(the_repository, + &entry->blob->object.oid, &type, + size); base = NULL; if (entry->stage == 1) { base = entry->blob; @@ -93,8 +95,9 @@ static void *origin(struct merge_list *entry, unsigned long *size) enum object_type type; while (entry) { if (entry->stage == 2) - return read_object_file(&entry->blob->object.oid, - &type, size); + return repo_read_object_file(the_repository, + &entry->blob->object.oid, + &type, size); entry = entry->link; } return NULL; diff --git a/builtin/mktag.c b/builtin/mktag.c index 42c2457c705..4849b8b37c3 100644 --- a/builtin/mktag.c +++ b/builtin/mktag.c @@ -52,7 +52,8 @@ static int verify_object_in_tag(struct object_id *tagged_oid, int *tagged_type) void *buffer; const struct object_id *repl; - buffer = read_object_file(tagged_oid, &type, &size); + buffer = repo_read_object_file(the_repository, tagged_oid, &type, + &size); if (!buffer) die(_("could not read tagged object '%s'"), oid_to_hex(tagged_oid)); diff --git a/builtin/notes.c b/builtin/notes.c index 9aea5a4b27b..4b13943be7f 100644 --- a/builtin/notes.c +++ b/builtin/notes.c @@ -126,7 +126,7 @@ static void copy_obj_to_fd(int fd, const struct object_id *oid) { unsigned long size; enum object_type type; - char *buf = read_object_file(oid, &type, &size); + char *buf = repo_read_object_file(the_repository, oid, &type, &size); if (buf) { if (size) write_or_die(fd, buf, size); @@ -261,7 +261,7 @@ static int parse_reuse_arg(const struct option *opt, const char *arg, int unset) if (repo_get_oid(the_repository, arg, &object)) die(_("failed to resolve '%s' as a valid ref."), arg); - if (!(buf = read_object_file(&object, &type, &len))) + if (!(buf = repo_read_object_file(the_repository, &object, &type, &len))) die(_("failed to read object '%s'."), arg); if (type != OBJ_BLOB) { free(buf); @@ -618,7 +618,8 @@ static int append_edit(int argc, const char **argv, const char *prefix) /* Append buf to previous note contents */ unsigned long size; enum object_type type; - char *prev_buf = read_object_file(note, &type, &size); + char *prev_buf = repo_read_object_file(the_repository, note, + &type, &size); strbuf_grow(&d.buf, size + 1); if (d.buf.len && prev_buf && size) diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c index 545b8bddc8e..068e6326c1d 100644 --- a/builtin/pack-objects.c +++ b/builtin/pack-objects.c @@ -290,11 +290,13 @@ static void *get_delta(struct object_entry *entry) void *buf, *base_buf, *delta_buf; enum object_type type; - buf = read_object_file(&entry->idx.oid, &type, &size); + buf = repo_read_object_file(the_repository, &entry->idx.oid, &type, + &size); if (!buf) die(_("unable to read %s"), oid_to_hex(&entry->idx.oid)); - base_buf = read_object_file(&DELTA(entry)->idx.oid, &type, - &base_size); + base_buf = repo_read_object_file(the_repository, + &DELTA(entry)->idx.oid, &type, + &base_size); if (!base_buf) die("unable to read %s", oid_to_hex(&DELTA(entry)->idx.oid)); @@ -456,7 +458,9 @@ static unsigned long write_no_reuse_object(struct hashfile *f, struct object_ent &size, NULL)) != NULL) buf = NULL; else { - buf = read_object_file(&entry->idx.oid, &type, &size); + buf = repo_read_object_file(the_repository, + &entry->idx.oid, &type, + &size); if (!buf) die(_("unable to read %s"), oid_to_hex(&entry->idx.oid)); @@ -1667,7 +1671,7 @@ static struct pbase_tree_cache *pbase_tree_get(const struct object_id *oid) /* Did not find one. Either we got a bogus request or * we need to read and perhaps cache. */ - data = read_object_file(oid, &type, &size); + data = repo_read_object_file(the_repository, oid, &type, &size); if (!data) return NULL; if (type != OBJ_TREE) { @@ -2527,7 +2531,9 @@ static int try_delta(struct unpacked *trg, struct unpacked *src, /* Load data if not already done */ if (!trg->data) { packing_data_lock(&to_pack); - trg->data = read_object_file(&trg_entry->idx.oid, &type, &sz); + trg->data = repo_read_object_file(the_repository, + &trg_entry->idx.oid, &type, + &sz); packing_data_unlock(&to_pack); if (!trg->data) die(_("object %s cannot be read"), @@ -2540,7 +2546,9 @@ static int try_delta(struct unpacked *trg, struct unpacked *src, } if (!src->data) { packing_data_lock(&to_pack); - src->data = read_object_file(&src_entry->idx.oid, &type, &sz); + src->data = repo_read_object_file(the_repository, + &src_entry->idx.oid, &type, + &sz); packing_data_unlock(&to_pack); if (!src->data) { if (src_entry->preferred_base) { diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c index e2b7202b04c..90d117beaf5 100644 --- a/builtin/receive-pack.c +++ b/builtin/receive-pack.c @@ -1493,7 +1493,7 @@ static const char *update(struct command *cmd, struct shallow_info *si) } } - if (!is_null_oid(new_oid) && !has_object_file(new_oid)) { + if (!is_null_oid(new_oid) && !repo_has_object_file(the_repository, new_oid)) { error("unpack should have generated %s, " "but I can't find it!", oid_to_hex(new_oid)); ret = "bad pack"; diff --git a/builtin/remote.c b/builtin/remote.c index 729f6f3643a..a6b100dce7f 100644 --- a/builtin/remote.c +++ b/builtin/remote.c @@ -443,7 +443,7 @@ static int get_push_ref_states(const struct ref *remote_refs, info->status = PUSH_STATUS_UPTODATE; else if (is_null_oid(&ref->old_oid)) info->status = PUSH_STATUS_CREATE; - else if (has_object_file(&ref->old_oid) && + else if (repo_has_object_file(the_repository, &ref->old_oid) && ref_newer(&ref->new_oid, &ref->old_oid)) info->status = PUSH_STATUS_FASTFORWARD; else diff --git a/builtin/show-ref.c b/builtin/show-ref.c index b5a68e23e65..63a5bb1efae 100644 --- a/builtin/show-ref.c +++ b/builtin/show-ref.c @@ -27,7 +27,7 @@ static void show_one(const char *refname, const struct object_id *oid) const char *hex; struct object_id peeled; - if (!has_object_file(oid)) + if (!repo_has_object_file(the_repository, oid)) die("git show-ref: bad ref %s (%s)", refname, oid_to_hex(oid)); diff --git a/builtin/tag.c b/builtin/tag.c index 7af7eaa4139..61fd55d62e2 100644 --- a/builtin/tag.c +++ b/builtin/tag.c @@ -211,7 +211,7 @@ static void write_tag_body(int fd, const struct object_id *oid) struct strbuf payload = STRBUF_INIT; struct strbuf signature = STRBUF_INIT; - orig = buf = read_object_file(oid, &type, &size); + orig = buf = repo_read_object_file(the_repository, oid, &type, &size); if (!buf) return; if (parse_signature(buf, size, &payload, &signature)) { @@ -362,7 +362,7 @@ static void create_reflog_msg(const struct object_id *oid, struct strbuf *sb) strbuf_addstr(sb, "object of unknown type"); break; case OBJ_COMMIT: - if ((buf = read_object_file(oid, &type, &size))) { + if ((buf = repo_read_object_file(the_repository, oid, &type, &size))) { subject_len = find_commit_subject(buf, &subject_start); strbuf_insert(sb, sb->len, subject_start, subject_len); } else { diff --git a/builtin/unpack-file.c b/builtin/unpack-file.c index b9e258a553f..9cbc295e193 100644 --- a/builtin/unpack-file.c +++ b/builtin/unpack-file.c @@ -11,7 +11,7 @@ static char *create_temp_file(struct object_id *oid) unsigned long size; int fd; - buf = read_object_file(oid, &type, &size); + buf = repo_read_object_file(the_repository, oid, &type, &size); if (!buf || type != OBJ_BLOB) die("unable to read blob object %s", oid_to_hex(oid)); diff --git a/builtin/unpack-objects.c b/builtin/unpack-objects.c index 1908dcfcffb..2e0ca419190 100644 --- a/builtin/unpack-objects.c +++ b/builtin/unpack-objects.c @@ -444,7 +444,7 @@ static void unpack_delta_entry(enum object_type type, unsigned long delta_size, delta_data = get_data(delta_size); if (!delta_data) return; - if (has_object_file(&base_oid)) + if (repo_has_object_file(the_repository, &base_oid)) ; /* Ok we have this one */ else if (resolve_against_held(nr, &base_oid, delta_data, delta_size)) @@ -510,7 +510,8 @@ static void unpack_delta_entry(enum object_type type, unsigned long delta_size, if (resolve_against_held(nr, &base_oid, delta_data, delta_size)) return; - base = read_object_file(&base_oid, &type, &base_size); + base = repo_read_object_file(the_repository, &base_oid, &type, + &base_size); if (!base) { error("failed to read delta-pack base object %s", oid_to_hex(&base_oid)); diff --git a/bulk-checkin.c b/bulk-checkin.c index d64cd5c52d0..556a34ba7d4 100644 --- a/bulk-checkin.c +++ b/bulk-checkin.c @@ -126,7 +126,7 @@ static int already_written(struct bulk_checkin_packfile *state, struct object_id int i; /* The object may already exist in the repository */ - if (has_object_file(oid)) + if (repo_has_object_file(the_repository, oid)) return 1; /* Might want to keep the list sorted */ diff --git a/bundle.c b/bundle.c index 99d7de97f6c..bce0c7f99e8 100644 --- a/bundle.c +++ b/bundle.c @@ -294,7 +294,7 @@ static int is_tag_in_date_range(struct object *tag, struct rev_info *revs) if (revs->max_age == -1 && revs->min_age == -1) goto out; - buf = read_object_file(&tag->oid, &type, &size); + buf = repo_read_object_file(the_repository, &tag->oid, &type, &size); if (!buf) goto out; line = memmem(buf, size, "\ntagger ", 8); diff --git a/cache-tree.c b/cache-tree.c index 9d46ecef091..d71b9befd9a 100644 --- a/cache-tree.c +++ b/cache-tree.c @@ -231,7 +231,7 @@ int cache_tree_fully_valid(struct cache_tree *it) int i; if (!it) return 0; - if (it->entry_count < 0 || !has_object_file(&it->oid)) + if (it->entry_count < 0 || !repo_has_object_file(the_repository, &it->oid)) return 0; for (i = 0; i < it->subtree_nr; i++) { if (!cache_tree_fully_valid(it->down[i]->cache_tree)) @@ -282,7 +282,7 @@ static int update_one(struct cache_tree *it, } } - if (0 <= it->entry_count && has_object_file(&it->oid)) + if (0 <= it->entry_count && repo_has_object_file(the_repository, &it->oid)) return it->entry_count; /* @@ -388,7 +388,7 @@ static int update_one(struct cache_tree *it, ce_missing_ok = mode == S_IFGITLINK || missing_ok || !must_check_existence(ce); if (is_null_oid(oid) || - (!ce_missing_ok && !has_object_file(oid))) { + (!ce_missing_ok && !repo_has_object_file(the_repository, oid))) { strbuf_release(&buffer); if (expected_missing) return -1; @@ -436,7 +436,7 @@ static int update_one(struct cache_tree *it, struct object_id oid; hash_object_file(the_hash_algo, buffer.buf, buffer.len, OBJ_TREE, &oid); - if (has_object_file_with_flags(&oid, OBJECT_INFO_SKIP_FETCH_OBJECT)) + if (repo_has_object_file_with_flags(the_repository, &oid, OBJECT_INFO_SKIP_FETCH_OBJECT)) oidcpy(&it->oid, &oid); else to_invalidate = 1; diff --git a/combine-diff.c b/combine-diff.c index e917362faf7..6077d4ec498 100644 --- a/combine-diff.c +++ b/combine-diff.c @@ -333,7 +333,7 @@ static char *grab_blob(struct repository *r, *size = fill_textconv(r, textconv, df, &blob); free_filespec(df); } else { - blob = read_object_file(oid, &type, size); + blob = repo_read_object_file(the_repository, oid, &type, size); if (type != OBJ_BLOB) die("object '%s' is not a blob!", oid_to_hex(oid)); } diff --git a/commit.c b/commit.c index 127ec79b2d3..cfd14f7d975 100644 --- a/commit.c +++ b/commit.c @@ -1215,7 +1215,8 @@ static void handle_signed_tag(struct commit *parent, struct commit_extra_header desc = merge_remote_util(parent); if (!desc || !desc->obj) return; - buf = read_object_file(&desc->obj->oid, &type, &size); + buf = repo_read_object_file(the_repository, &desc->obj->oid, &type, + &size); if (!buf || type != OBJ_TAG) goto free_return; if (!parse_signature(buf, size, &payload, &signature)) diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index 3c0bd8781e7..fa159aba5b5 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -77,6 +77,16 @@ | - diff_setup + repo_diff_setup +// object-store.h +| +- read_object_file ++ repo_read_object_file +| +- has_object_file ++ repo_has_object_file +| +- has_object_file_with_flags ++ repo_has_object_file_with_flags ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 00461ee86b3..69e9694111e 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,17 +5,7 @@ @@ @@ ( -// object-store.h -- read_object_file -+ repo_read_object_file -| -- has_object_file -+ repo_has_object_file -| -- has_object_file_with_flags -+ repo_has_object_file_with_flags // pretty.h -| - format_commit_message + repo_format_commit_message // packfile.h diff --git a/dir.c b/dir.c index d5bb199f4b4..b06a100514d 100644 --- a/dir.c +++ b/dir.c @@ -268,7 +268,7 @@ static int do_read_blob(const struct object_id *oid, struct oid_stat *oid_stat, *size_out = 0; *data_out = NULL; - data = read_object_file(oid, &type, &sz); + data = repo_read_object_file(the_repository, oid, &type, &sz); if (!data || type != OBJ_BLOB) { free(data); return -1; diff --git a/entry.c b/entry.c index c97cfa833bb..8c21f98b9e8 100644 --- a/entry.c +++ b/entry.c @@ -87,7 +87,8 @@ void *read_blob_entry(const struct cache_entry *ce, size_t *size) { enum object_type type; unsigned long ul; - void *blob_data = read_object_file(&ce->oid, &type, &ul); + void *blob_data = repo_read_object_file(the_repository, &ce->oid, + &type, &ul); *size = ul; if (blob_data) { diff --git a/fetch-pack.c b/fetch-pack.c index 4ddabb4ec76..12675052f97 100644 --- a/fetch-pack.c +++ b/fetch-pack.c @@ -764,9 +764,9 @@ static void mark_complete_and_common_ref(struct fetch_negotiator *negotiator, if (!commit) { struct object *o; - if (!has_object_file_with_flags(&ref->old_oid, - OBJECT_INFO_QUICK | - OBJECT_INFO_SKIP_FETCH_OBJECT)) + if (!repo_has_object_file_with_flags(the_repository, &ref->old_oid, + OBJECT_INFO_QUICK | + OBJECT_INFO_SKIP_FETCH_OBJECT)) continue; o = parse_object(the_repository, &ref->old_oid); if (!o || o->type != OBJ_COMMIT) @@ -1965,7 +1965,7 @@ static void update_shallow(struct fetch_pack_args *args, struct oid_array extra = OID_ARRAY_INIT; struct object_id *oid = si->shallow->oid; for (i = 0; i < si->shallow->nr; i++) - if (has_object_file(&oid[i])) + if (repo_has_object_file(the_repository, &oid[i])) oid_array_append(&extra, &oid[i]); if (extra.nr) { setup_alternate_shallow(&shallow_lock, diff --git a/fmt-merge-msg.c b/fmt-merge-msg.c index 29a1afa2485..5aab1d06619 100644 --- a/fmt-merge-msg.c +++ b/fmt-merge-msg.c @@ -518,7 +518,8 @@ static void fmt_merge_msg_sigs(struct strbuf *out) struct object_id *oid = origins.items[i].util; enum object_type type; unsigned long size; - char *buf = read_object_file(oid, &type, &size); + char *buf = repo_read_object_file(the_repository, oid, &type, + &size); char *origbuf = buf; unsigned long len = size; struct signature_check sigc = { NULL }; diff --git a/fsck.c b/fsck.c index 0d752d57717..adbe8bf59e7 100644 --- a/fsck.c +++ b/fsck.c @@ -1334,7 +1334,7 @@ static int fsck_blobs(struct oidset *blobs_found, struct oidset *blobs_done, if (oidset_contains(blobs_done, oid)) continue; - buf = read_object_file(oid, &type, &size); + buf = repo_read_object_file(the_repository, oid, &type, &size); if (!buf) { if (is_promisor_object(oid)) continue; diff --git a/http-push.c b/http-push.c index e149daeff3d..8c852ff646b 100644 --- a/http-push.c +++ b/http-push.c @@ -363,7 +363,8 @@ static void start_put(struct transfer_request *request) ssize_t size; git_zstream stream; - unpacked = read_object_file(&request->obj->oid, &type, &len); + unpacked = repo_read_object_file(the_repository, &request->obj->oid, + &type, &len); hdrlen = format_object_header(hdr, sizeof(hdr), type, len); /* Set it up */ @@ -1428,7 +1429,7 @@ static void one_remote_ref(const char *refname) * Fetch a copy of the object if it doesn't exist locally - it * may be required for updating server info later. */ - if (repo->can_update_info_refs && !has_object_file(&ref->old_oid)) { + if (repo->can_update_info_refs && !repo_has_object_file(the_repository, &ref->old_oid)) { obj = lookup_unknown_object(the_repository, &ref->old_oid); fprintf(stderr, " fetch %s for %s\n", oid_to_hex(&ref->old_oid), refname); @@ -1629,14 +1630,14 @@ static int delete_remote_branch(const char *pattern, int force) return error("Remote HEAD symrefs too deep"); if (is_null_oid(&head_oid)) return error("Unable to resolve remote HEAD"); - if (!has_object_file(&head_oid)) + if (!repo_has_object_file(the_repository, &head_oid)) return error("Remote HEAD resolves to object %s\nwhich does not exist locally, perhaps you need to fetch?", oid_to_hex(&head_oid)); /* Remote branch must resolve to a known object */ if (is_null_oid(&remote_ref->old_oid)) return error("Unable to resolve remote branch %s", remote_ref->name); - if (!has_object_file(&remote_ref->old_oid)) + if (!repo_has_object_file(the_repository, &remote_ref->old_oid)) return error("Remote branch %s resolves to object %s\nwhich does not exist locally, perhaps you need to fetch?", remote_ref->name, oid_to_hex(&remote_ref->old_oid)); /* Remote branch must be an ancestor of remote HEAD */ @@ -1856,7 +1857,7 @@ int cmd_main(int argc, const char **argv) if (!force_all && !is_null_oid(&ref->old_oid) && !ref->force) { - if (!has_object_file(&ref->old_oid) || + if (!repo_has_object_file(the_repository, &ref->old_oid) || !ref_newer(&ref->peer_ref->new_oid, &ref->old_oid)) { /* diff --git a/http-walker.c b/http-walker.c index c3e902c40e6..4588e6a340a 100644 --- a/http-walker.c +++ b/http-walker.c @@ -136,7 +136,7 @@ static int fill_active_slot(struct walker *walker) list_for_each_safe(pos, tmp, head) { obj_req = list_entry(pos, struct object_request, node); if (obj_req->state == WAITING) { - if (has_object_file(&obj_req->oid)) + if (repo_has_object_file(the_repository, &obj_req->oid)) obj_req->state = COMPLETE; else { start_object_request(walker, obj_req); @@ -493,7 +493,7 @@ static int fetch_object(struct walker *walker, unsigned char *hash) if (!obj_req) return error("Couldn't find request for %s in the queue", hex); - if (has_object_file(&obj_req->oid)) { + if (repo_has_object_file(the_repository, &obj_req->oid)) { if (obj_req->req) abort_http_object_request(obj_req->req); abort_object_request(obj_req); diff --git a/list-objects.c b/list-objects.c index d75132cfd73..6e6e7ce61ea 100644 --- a/list-objects.c +++ b/list-objects.c @@ -65,7 +65,7 @@ static void process_blob(struct traversal_context *ctx, * of missing objects. */ if (ctx->revs->exclude_promisor_objects && - !has_object_file(&obj->oid) && + !repo_has_object_file(the_repository, &obj->oid) && is_promisor_object(&obj->oid)) return; diff --git a/mailmap.c b/mailmap.c index ed8289aea58..f68f664bb1b 100644 --- a/mailmap.c +++ b/mailmap.c @@ -216,7 +216,7 @@ static int read_mailmap_blob(struct string_list *map, const char *name) if (repo_get_oid(the_repository, name, &oid) < 0) return 0; - buf = read_object_file(&oid, &type, &size); + buf = repo_read_object_file(the_repository, &oid, &type, &size); if (!buf) return error("unable to read mailmap object at %s", name); if (type != OBJ_BLOB) diff --git a/match-trees.c b/match-trees.c index c38dcbac7c6..5877fc64a8f 100644 --- a/match-trees.c +++ b/match-trees.c @@ -56,7 +56,7 @@ static void *fill_tree_desc_strict(struct tree_desc *desc, enum object_type type; unsigned long size; - buffer = read_object_file(hash, &type, &size); + buffer = repo_read_object_file(the_repository, hash, &type, &size); if (!buffer) die("unable to read tree (%s)", oid_to_hex(hash)); if (type != OBJ_TREE) @@ -189,7 +189,7 @@ static int splice_tree(const struct object_id *oid1, const char *prefix, if (*subpath) subpath++; - buf = read_object_file(oid1, &type, &sz); + buf = repo_read_object_file(the_repository, oid1, &type, &sz); if (!buf) die("cannot read tree %s", oid_to_hex(oid1)); init_tree_desc(&desc, buf, sz); diff --git a/merge-blobs.c b/merge-blobs.c index aedcab81138..5632ff6abb6 100644 --- a/merge-blobs.c +++ b/merge-blobs.c @@ -12,7 +12,8 @@ static int fill_mmfile_blob(mmfile_t *f, struct blob *obj) unsigned long size; enum object_type type; - buf = read_object_file(&obj->object.oid, &type, &size); + buf = repo_read_object_file(the_repository, &obj->object.oid, &type, + &size); if (!buf) return -1; if (type != OBJ_BLOB) { @@ -78,7 +79,8 @@ void *merge_blobs(struct index_state *istate, const char *path, return NULL; if (!our) our = their; - return read_object_file(&our->object.oid, &type, size); + return repo_read_object_file(the_repository, &our->object.oid, + &type, size); } if (fill_mmfile_blob(&f1, our) < 0) diff --git a/merge-ort.c b/merge-ort.c index 186e26d90a0..607e2c263f1 100644 --- a/merge-ort.c +++ b/merge-ort.c @@ -3506,7 +3506,7 @@ static int read_oid_strbuf(struct merge_options *opt, void *buf; enum object_type type; unsigned long size; - buf = read_object_file(oid, &type, &size); + buf = repo_read_object_file(the_repository, oid, &type, &size); if (!buf) return err(opt, _("cannot read object %s"), oid_to_hex(oid)); if (type != OBJ_BLOB) { diff --git a/merge-recursive.c b/merge-recursive.c index 6eeb4844f38..9c80b7aa3a7 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -951,7 +951,8 @@ static int update_file_flags(struct merge_options *opt, goto update_index; } - buf = read_object_file(&contents->oid, &type, &size); + buf = repo_read_object_file(the_repository, &contents->oid, + &type, &size); if (!buf) { ret = err(opt, _("cannot read object %s '%s'"), oid_to_hex(&contents->oid), path); @@ -3021,7 +3022,7 @@ static int read_oid_strbuf(struct merge_options *opt, void *buf; enum object_type type; unsigned long size; - buf = read_object_file(oid, &type, &size); + buf = repo_read_object_file(the_repository, oid, &type, &size); if (!buf) return err(opt, _("cannot read object %s"), oid_to_hex(oid)); if (type != OBJ_BLOB) { diff --git a/notes-cache.c b/notes-cache.c index 9dfd251a815..38466091360 100644 --- a/notes-cache.c +++ b/notes-cache.c @@ -81,7 +81,7 @@ char *notes_cache_get(struct notes_cache *c, struct object_id *key_oid, value_oid = get_note(&c->tree, key_oid); if (!value_oid) return NULL; - value = read_object_file(value_oid, &type, &size); + value = repo_read_object_file(the_repository, value_oid, &type, &size); *outsize = size; return value; diff --git a/notes-merge.c b/notes-merge.c index d26c826963e..571ecf15c7e 100644 --- a/notes-merge.c +++ b/notes-merge.c @@ -327,7 +327,7 @@ static void write_note_to_worktree(const struct object_id *obj, { enum object_type type; unsigned long size; - void *buf = read_object_file(note, &type, &size); + void *buf = repo_read_object_file(the_repository, note, &type, &size); if (!buf) die("cannot read note %s for object %s", diff --git a/notes.c b/notes.c index 427cfdac294..d40affc0f2f 100644 --- a/notes.c +++ b/notes.c @@ -788,7 +788,7 @@ static int prune_notes_helper(const struct object_id *object_oid, struct note_delete_list **l = (struct note_delete_list **) cb_data; struct note_delete_list *n; - if (has_object_file(object_oid)) + if (repo_has_object_file(the_repository, object_oid)) return 0; /* nothing to do for this note */ /* failed to find object => prune this note */ @@ -809,13 +809,15 @@ int combine_notes_concatenate(struct object_id *cur_oid, /* read in both note blob objects */ if (!is_null_oid(new_oid)) - new_msg = read_object_file(new_oid, &new_type, &new_len); + new_msg = repo_read_object_file(the_repository, new_oid, + &new_type, &new_len); if (!new_msg || !new_len || new_type != OBJ_BLOB) { free(new_msg); return 0; } if (!is_null_oid(cur_oid)) - cur_msg = read_object_file(cur_oid, &cur_type, &cur_len); + cur_msg = repo_read_object_file(the_repository, cur_oid, + &cur_type, &cur_len); if (!cur_msg || !cur_len || cur_type != OBJ_BLOB) { free(cur_msg); free(new_msg); @@ -871,7 +873,7 @@ static int string_list_add_note_lines(struct string_list *list, return 0; /* read_sha1_file NUL-terminates */ - data = read_object_file(oid, &t, &len); + data = repo_read_object_file(the_repository, oid, &t, &len); if (t != OBJ_BLOB || !data || !len) { free(data); return t != OBJ_BLOB || !data; @@ -1266,7 +1268,7 @@ static void format_note(struct notes_tree *t, const struct object_id *object_oid if (!oid) return; - if (!(msg = read_object_file(oid, &type, &msglen)) || type != OBJ_BLOB) { + if (!(msg = repo_read_object_file(the_repository, oid, &type, &msglen)) || type != OBJ_BLOB) { free(msg); return; } diff --git a/object-file.c b/object-file.c index 8fab8dbe80b..5944f51a3e0 100644 --- a/object-file.c +++ b/object-file.c @@ -1680,7 +1680,7 @@ int pretend_object_file(void *buf, unsigned long len, enum object_type type, struct cached_object *co; hash_object_file(the_hash_algo, buf, len, type, oid); - if (has_object_file_with_flags(oid, OBJECT_INFO_QUICK | OBJECT_INFO_SKIP_FETCH_OBJECT) || + if (repo_has_object_file_with_flags(the_repository, oid, OBJECT_INFO_QUICK | OBJECT_INFO_SKIP_FETCH_OBJECT) || find_cached_object(oid)) return 0; ALLOC_GROW(cached_objects, cached_object_nr + 1, cached_object_alloc); diff --git a/object-store.h b/object-store.h index 82201ec3e7b..62a683af4d6 100644 --- a/object-store.h +++ b/object-store.h @@ -245,9 +245,6 @@ void *repo_read_object_file(struct repository *r, const struct object_id *oid, enum object_type *type, unsigned long *size); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define read_object_file(oid, type, size) repo_read_object_file(the_repository, oid, type, size) -#endif /* Read and unpack an object file into memory, write memory to an object file */ int oid_object_info(struct repository *r, const struct object_id *, unsigned long *); @@ -387,10 +384,6 @@ int has_object(struct repository *r, const struct object_id *oid, int repo_has_object_file(struct repository *r, const struct object_id *oid); int repo_has_object_file_with_flags(struct repository *r, const struct object_id *oid, int flags); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define has_object_file(oid) repo_has_object_file(the_repository, oid) -#define has_object_file_with_flags(oid, flags) repo_has_object_file_with_flags(the_repository, oid, flags) -#endif /* * Return true iff an alternate object database has a loose object diff --git a/read-cache.c b/read-cache.c index c1d47b9fc83..4518a40ac06 100644 --- a/read-cache.c +++ b/read-cache.c @@ -265,7 +265,7 @@ static int ce_compare_link(const struct cache_entry *ce, size_t expected_size) if (strbuf_readlink(&sb, ce->name, expected_size)) return -1; - buffer = read_object_file(&ce->oid, &type, &size); + buffer = repo_read_object_file(the_repository, &ce->oid, &type, &size); if (buffer) { if (size == sb.len) match = memcmp(buffer, sb.buf, size); @@ -3555,7 +3555,8 @@ void *read_blob_data_from_index(struct index_state *istate, } if (pos < 0) return NULL; - data = read_object_file(&istate->cache[pos]->oid, &type, &sz); + data = repo_read_object_file(the_repository, &istate->cache[pos]->oid, + &type, &sz); if (!data || type != OBJ_BLOB) { free(data); return NULL; diff --git a/reflog.c b/reflog.c index 6e8362e7a2f..510663e1e51 100644 --- a/reflog.c +++ b/reflog.c @@ -28,7 +28,8 @@ static int tree_is_complete(const struct object_id *oid) if (!tree->buffer) { enum object_type type; unsigned long size; - void *data = read_object_file(oid, &type, &size); + void *data = repo_read_object_file(the_repository, oid, &type, + &size); if (!data) { tree->object.flags |= INCOMPLETE; return 0; @@ -39,7 +40,7 @@ static int tree_is_complete(const struct object_id *oid) init_tree_desc(&desc, tree->buffer, tree->size); complete = 1; while (tree_entry(&desc, &entry)) { - if (!has_object_file(&entry.oid) || + if (!repo_has_object_file(the_repository, &entry.oid) || (S_ISDIR(entry.mode) && !tree_is_complete(&entry.oid))) { tree->object.flags |= INCOMPLETE; complete = 0; diff --git a/remote.c b/remote.c index 37cb5213795..9219ebb8962 100644 --- a/remote.c +++ b/remote.c @@ -1761,7 +1761,7 @@ void set_ref_status_for_push(struct ref *remote_refs, int send_mirror, if (!reject_reason && !ref->deletion && !is_null_oid(&ref->old_oid)) { if (starts_with(ref->name, "refs/tags/")) reject_reason = REF_STATUS_REJECT_ALREADY_EXISTS; - else if (!has_object_file(&ref->old_oid)) + else if (!repo_has_object_file(the_repository, &ref->old_oid)) reject_reason = REF_STATUS_REJECT_FETCH_FIRST; else if (!lookup_commit_reference_gently(the_repository, &ref->old_oid, 1) || !lookup_commit_reference_gently(the_repository, &ref->new_oid, 1)) diff --git a/rerere.c b/rerere.c index a67abaab077..0ec546b744f 100644 --- a/rerere.c +++ b/rerere.c @@ -967,8 +967,9 @@ static int handle_cache(struct index_state *istate, break; i = ce_stage(ce) - 1; if (!mmfile[i].ptr) { - mmfile[i].ptr = read_object_file(&ce->oid, &type, - &size); + mmfile[i].ptr = repo_read_object_file(the_repository, + &ce->oid, &type, + &size); mmfile[i].size = size; } } diff --git a/send-pack.c b/send-pack.c index 423a5cfe22d..2cb313a5023 100644 --- a/send-pack.c +++ b/send-pack.c @@ -43,9 +43,9 @@ int option_parse_push_signed(const struct option *opt, static void feed_object(const struct object_id *oid, FILE *fh, int negative) { if (negative && - !has_object_file_with_flags(oid, - OBJECT_INFO_SKIP_FETCH_OBJECT | - OBJECT_INFO_QUICK)) + !repo_has_object_file_with_flags(the_repository, oid, + OBJECT_INFO_SKIP_FETCH_OBJECT | + OBJECT_INFO_QUICK)) return; if (negative) diff --git a/shallow.c b/shallow.c index 138bcfe009c..ce21f66e5e1 100644 --- a/shallow.c +++ b/shallow.c @@ -303,7 +303,7 @@ static int write_one_shallow(const struct commit_graft *graft, void *cb_data) if (graft->nr_parent != -1) return 0; if (data->flags & QUICK) { - if (!has_object_file(&graft->oid)) + if (!repo_has_object_file(the_repository, &graft->oid)) return 0; } else if (data->flags & SEEN_ONLY) { struct commit *c = lookup_commit(the_repository, &graft->oid); @@ -468,7 +468,7 @@ void prepare_shallow_info(struct shallow_info *info, struct oid_array *sa) ALLOC_ARRAY(info->ours, sa->nr); ALLOC_ARRAY(info->theirs, sa->nr); for (i = 0; i < sa->nr; i++) { - if (has_object_file(sa->oid + i)) { + if (repo_has_object_file(the_repository, sa->oid + i)) { struct commit_graft *graft; graft = lookup_commit_graft(the_repository, &sa->oid[i]); @@ -496,7 +496,7 @@ void remove_nonexistent_theirs_shallow(struct shallow_info *info) for (i = dst = 0; i < info->nr_theirs; i++) { if (i != dst) info->theirs[dst] = info->theirs[i]; - if (has_object_file(oid + info->theirs[i])) + if (repo_has_object_file(the_repository, oid + info->theirs[i])) dst++; } info->nr_theirs = dst; diff --git a/submodule-config.c b/submodule-config.c index 57972c3e131..d0111e99937 100644 --- a/submodule-config.c +++ b/submodule-config.c @@ -590,7 +590,8 @@ static const struct submodule *config_from(struct submodule_cache *cache, if (submodule) goto out; - config = read_object_file(&oid, &type, &config_size); + config = repo_read_object_file(the_repository, &oid, &type, + &config_size); if (!config || type != OBJ_BLOB) goto out; diff --git a/tag.c b/tag.c index 85c348ad824..911cd3178ca 100644 --- a/tag.c +++ b/tag.c @@ -55,7 +55,7 @@ int gpg_verify_tag(const struct object_id *oid, const char *name_to_report, repo_find_unique_abbrev(the_repository, oid, DEFAULT_ABBREV), type_name(type)); - buf = read_object_file(oid, &type, &size); + buf = repo_read_object_file(the_repository, oid, &type, &size); if (!buf) return error("%s: unable to read file.", name_to_report ? @@ -217,7 +217,8 @@ int parse_tag(struct tag *item) if (item->object.parsed) return 0; - data = read_object_file(&item->object.oid, &type, &size); + data = repo_read_object_file(the_repository, &item->object.oid, &type, + &size); if (!data) return error("Could not read %s", oid_to_hex(&item->object.oid)); diff --git a/tree.c b/tree.c index e33f4009ac9..955b53f6a57 100644 --- a/tree.c +++ b/tree.c @@ -130,7 +130,8 @@ int parse_tree_gently(struct tree *item, int quiet_on_missing) if (item->object.parsed) return 0; - buffer = read_object_file(&item->object.oid, &type, &size); + buffer = repo_read_object_file(the_repository, &item->object.oid, + &type, &size); if (!buffer) return quiet_on_missing ? -1 : error("Could not read %s", diff --git a/upload-pack.c b/upload-pack.c index 41b9362cf1b..54be6a61910 100644 --- a/upload-pack.c +++ b/upload-pack.c @@ -500,8 +500,8 @@ static int got_oid(struct upload_pack_data *data, { if (get_oid_hex(hex, oid)) die("git upload-pack: expected SHA1 object, got '%s'", hex); - if (!has_object_file_with_flags(oid, - OBJECT_INFO_QUICK | OBJECT_INFO_SKIP_FETCH_OBJECT)) + if (!repo_has_object_file_with_flags(the_repository, oid, + OBJECT_INFO_QUICK | OBJECT_INFO_SKIP_FETCH_OBJECT)) return -1; return do_got_oid(data, oid); } @@ -1601,8 +1601,8 @@ static int process_haves(struct upload_pack_data *data, struct oid_array *common for (i = 0; i < data->haves.nr; i++) { const struct object_id *oid = &data->haves.oid[i]; - if (!has_object_file_with_flags(oid, - OBJECT_INFO_QUICK | OBJECT_INFO_SKIP_FETCH_OBJECT)) + if (!repo_has_object_file_with_flags(the_repository, oid, + OBJECT_INFO_QUICK | OBJECT_INFO_SKIP_FETCH_OBJECT)) continue; oid_array_append(common, oid); diff --git a/walker.c b/walker.c index 5275070de76..e86f85e5283 100644 --- a/walker.c +++ b/walker.c @@ -146,7 +146,7 @@ static int process(struct walker *walker, struct object *obj) return 0; obj->flags |= SEEN; - if (has_object_file(&obj->oid)) { + if (repo_has_object_file(the_repository, &obj->oid)) { /* We already have it, so we should scan it now. */ obj->flags |= TO_SCAN; } diff --git a/xdiff-interface.c b/xdiff-interface.c index 5baf6ceb947..0617fadbfbb 100644 --- a/xdiff-interface.c +++ b/xdiff-interface.c @@ -184,7 +184,7 @@ void read_mmblob(mmfile_t *ptr, const struct object_id *oid) return; } - ptr->ptr = read_object_file(oid, &type, &size); + ptr->ptr = repo_read_object_file(the_repository, oid, &type, &size); if (!ptr->ptr || type != OBJ_BLOB) die("unable to read blob object %s", oid_to_hex(oid)); ptr->size = size; From patchwork Tue Mar 28 13:58:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191115 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6E758C761AF for ; Tue, 28 Mar 2023 14:00:09 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233045AbjC1OAI (ORCPT ); Tue, 28 Mar 2023 10:00:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39630 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232920AbjC1N7e (ORCPT ); Tue, 28 Mar 2023 09:59:34 -0400 Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com [IPv6:2a00:1450:4864:20::32b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 02B1DC65D for ; Tue, 28 Mar 2023 06:59:20 -0700 (PDT) Received: by mail-wm1-x32b.google.com with SMTP id l8-20020a05600c1d0800b003ef6708bbf6so5467488wms.5 for ; Tue, 28 Mar 2023 06:59:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011958; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=U5aEQy+RkiD2KIuh96chCoxsXrOZ/WjAYOe8f142jtA=; b=IZ44REJzv0EM4J/8mM2ZnQAyDAD2zxcHEGPXK7XuWMb662swUgRzaagbyt6ezPAcA+ WHPgvjX6ZwSYDZimfpbNwZjz6Eo3Jz0lr2RoUlFtmRIRFn38Dq8j+ZwmY5L9VCz4anAg A5ql/6htb8gjHomFHPo02dG2az+cDFhlcth0k0EHk+3YBnj3x1ByGz9tHSltDQWzsjYk 5+E74vIFj1cAelUqw/rLzvxa6lNe9tjpmH+Rmhu7KofYuug37hUCBle4H6dZXdRo0nWu 31eFds/bpQq1YjRTG2cYIT6PW7HVICFsaE4lSFbuYw5aTuLa/z+ObL+nmh0rN7EuTNPV yyzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011958; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=U5aEQy+RkiD2KIuh96chCoxsXrOZ/WjAYOe8f142jtA=; b=v7WOWBqd6P9lN+7oQyGaWC2ZvcDYrJ9YWR6ZsQKUCFWMvuE5N62X70Ybc/brfZGBA9 nFAs67+JjrJ8zeH1tNVj2e2xDf+159+uozsRNIKsm/8edWrvpya/IkV6C2xHUG7DSO48 jiQRKPHA5amaXHik7YgtrdEaX8K5v+/EUpswsOvljKAG8AWQ8pAkxBJp9xXGJ4lXJof2 loWdVJYNn8hqA42qwFmsyd56rscH0D8jCUXraItztx8wkBYmZHoEkDhuge0X9NnzPdxK 4yYb5p83AkS9bOJ+U52vEaHwbXLLud5GcFuIIs1aWHW3/G0ZJmUdJUW+GA9b1Be/MWFD EGVQ== X-Gm-Message-State: AO0yUKX0hF/ylF7ie2XCTUscJYc+5tbY0COjpuy9qvc0NypqjKgqp3j3 pl2nPbH68klkykwnslDNt0WnhQFUKSYTEg== X-Google-Smtp-Source: AK7set+2JVdplVJ0CdAUYABkYmHlVsm1XPosx5mzB+nRX/AJ3//w6RXvMvP0sbnm/l4SP9MkW9OoOg== X-Received: by 2002:a7b:c4c6:0:b0:3ee:1afc:c15 with SMTP id g6-20020a7bc4c6000000b003ee1afc0c15mr12327745wmk.33.1680011957871; Tue, 28 Mar 2023 06:59:17 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:17 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 10/17] cocci: apply the "pretty.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:51 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "pretty.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- archive.c | 3 ++- bisect.c | 3 ++- builtin/bisect.c | 10 ++++++---- builtin/commit.c | 13 ++++++++----- builtin/notes.c | 3 ++- builtin/shortlog.c | 6 ++++-- contrib/coccinelle/the_repository.cocci | 4 ++++ contrib/coccinelle/the_repository.pending.cocci | 4 ---- fmt-merge-msg.c | 3 ++- log-tree.c | 9 ++++++--- notes-cache.c | 3 ++- object-name.c | 6 ++++-- pretty.c | 3 ++- pretty.h | 4 ---- sequencer.c | 12 ++++++++---- t/helper/test-revision-walking.c | 3 ++- 16 files changed, 54 insertions(+), 35 deletions(-) diff --git a/archive.c b/archive.c index c6eaa6d6146..98de324362a 100644 --- a/archive.c +++ b/archive.c @@ -61,7 +61,8 @@ static void format_subst(const struct commit *commit, strbuf_add(&fmt, b + 8, c - b - 8); strbuf_add(buf, src, b - src); - format_commit_message(commit, fmt.buf, buf, ctx); + repo_format_commit_message(the_repository, commit, fmt.buf, + buf, ctx); len -= c + 1 - src; src = c + 1; } diff --git a/bisect.c b/bisect.c index 5998e4b2e32..d55f2a4da5d 100644 --- a/bisect.c +++ b/bisect.c @@ -753,7 +753,8 @@ enum bisect_error bisect_checkout(const struct object_id *bisect_rev, } commit = lookup_commit_reference(the_repository, bisect_rev); - format_commit_message(commit, "[%H] %s%n", &commit_msg, &pp); + repo_format_commit_message(the_repository, commit, "[%H] %s%n", + &commit_msg, &pp); fputs(commit_msg.buf, stdout); strbuf_release(&commit_msg); diff --git a/builtin/bisect.c b/builtin/bisect.c index f925ceeb3c0..6b01e3c3e8e 100644 --- a/builtin/bisect.c +++ b/builtin/bisect.c @@ -267,7 +267,8 @@ static void log_commit(FILE *fp, char *fmt, const char *state, struct strbuf commit_msg = STRBUF_INIT; char *label = xstrfmt(fmt, state); - format_commit_message(commit, "%s", &commit_msg, &pp); + repo_format_commit_message(the_repository, commit, "%s", &commit_msg, + &pp); fprintf(fp, "# %s: [%s] %s\n", label, oid_to_hex(&commit->object.oid), commit_msg.buf); @@ -605,8 +606,8 @@ static int bisect_skipped_commits(struct bisect_terms *terms) while ((commit = get_revision(&revs)) != NULL) { strbuf_reset(&commit_name); - format_commit_message(commit, "%s", - &commit_name, &pp); + repo_format_commit_message(the_repository, commit, "%s", + &commit_name, &pp); fprintf(fp, "# possible first %s commit: [%s] %s\n", terms->term_bad, oid_to_hex(&commit->object.oid), commit_name.buf); @@ -635,7 +636,8 @@ static int bisect_successful(struct bisect_terms *terms) read_ref(bad_ref, &oid); commit = lookup_commit_reference_by_name(bad_ref); - format_commit_message(commit, "%s", &commit_name, &pp); + repo_format_commit_message(the_repository, commit, "%s", &commit_name, + &pp); res = append_to_file(git_path_bisect_log(), "# first %s commit: [%s] %s\n", terms->term_bad, oid_to_hex(&commit->object.oid), diff --git a/builtin/commit.c b/builtin/commit.c index c64fc50e923..b8b4893ab20 100644 --- a/builtin/commit.c +++ b/builtin/commit.c @@ -719,7 +719,7 @@ static void prepare_amend_commit(struct commit *commit, struct strbuf *sb, * duplicate the subject line. */ fmt = starts_with(subject, "amend!") ? "%b" : "%B"; - format_commit_message(commit, fmt, sb, ctx); + repo_format_commit_message(the_repository, commit, fmt, sb, ctx); repo_unuse_commit_buffer(the_repository, commit, buffer); } @@ -760,8 +760,9 @@ static int prepare_to_commit(const char *index_file, const char *prefix, if (!c) die(_("could not lookup commit %s"), squash_message); ctx.output_encoding = get_commit_output_encoding(); - format_commit_message(c, "squash! %s\n\n", &sb, - &ctx); + repo_format_commit_message(the_repository, c, + "squash! %s\n\n", &sb, + &ctx); } } @@ -795,7 +796,8 @@ static int prepare_to_commit(const char *index_file, const char *prefix, die(_("could not lookup commit %s"), fixup_commit); ctx.output_encoding = get_commit_output_encoding(); fmt = xstrfmt("%s! %%s\n\n", fixup_prefix); - format_commit_message(commit, fmt, &sb, &ctx); + repo_format_commit_message(the_repository, commit, fmt, &sb, + &ctx); free(fmt); hook_arg1 = "message"; @@ -1135,7 +1137,8 @@ static const char *find_author_by_nickname(const char *name) struct pretty_print_context ctx = {0}; ctx.date_mode.type = DATE_NORMAL; strbuf_release(&buf); - format_commit_message(commit, "%aN <%aE>", &buf, &ctx); + repo_format_commit_message(the_repository, commit, + "%aN <%aE>", &buf, &ctx); release_revisions(&revs); return strbuf_detach(&buf, NULL); } diff --git a/builtin/notes.c b/builtin/notes.c index 4b13943be7f..859a56591aa 100644 --- a/builtin/notes.c +++ b/builtin/notes.c @@ -744,7 +744,8 @@ static int merge_commit(struct notes_merge_options *o) /* Reuse existing commit message in reflog message */ memset(&pretty_ctx, 0, sizeof(pretty_ctx)); - format_commit_message(partial, "%s", &msg, &pretty_ctx); + repo_format_commit_message(the_repository, partial, "%s", &msg, + &pretty_ctx); strbuf_trim(&msg); strbuf_insertstr(&msg, 0, "notes: "); update_ref(msg.buf, o->local_ref, &oid, diff --git a/builtin/shortlog.c b/builtin/shortlog.c index 8afd1ad865e..62f91b8b932 100644 --- a/builtin/shortlog.c +++ b/builtin/shortlog.c @@ -223,7 +223,8 @@ static void insert_records_from_format(struct shortlog *log, for_each_string_list_item(item, &log->format) { strbuf_reset(&buf); - format_commit_message(commit, item->string, &buf, ctx); + repo_format_commit_message(the_repository, commit, + item->string, &buf, ctx); if (!shortlog_needs_dedup(log) || strset_add(dups, buf.buf)) insert_one_record(log, buf.buf, oneline); @@ -249,7 +250,8 @@ void shortlog_add_commit(struct shortlog *log, struct commit *commit) if (log->user_format) pretty_print_commit(&ctx, commit, &oneline); else - format_commit_message(commit, "%s", &oneline, &ctx); + repo_format_commit_message(the_repository, commit, + "%s", &oneline, &ctx); } oneline_str = oneline.len ? oneline.buf : ""; diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index fa159aba5b5..ff4c56114f1 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -87,6 +87,10 @@ | - has_object_file_with_flags + repo_has_object_file_with_flags +// pretty.h +| +- format_commit_message ++ repo_format_commit_message ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 69e9694111e..375850e773c 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,11 +5,7 @@ @@ @@ ( -// pretty.h -- format_commit_message -+ repo_format_commit_message // packfile.h -| - approximate_object_count + repo_approximate_object_count // promisor-remote.h diff --git a/fmt-merge-msg.c b/fmt-merge-msg.c index 5aab1d06619..5236b75fab2 100644 --- a/fmt-merge-msg.c +++ b/fmt-merge-msg.c @@ -383,7 +383,8 @@ static void shortlog(const char *name, if (subjects.nr > limit) continue; - format_commit_message(commit, "%s", &sb, &ctx); + repo_format_commit_message(the_repository, commit, "%s", &sb, + &ctx); strbuf_ltrim(&sb); if (!sb.len) diff --git a/log-tree.c b/log-tree.c index 5c97bc403fb..f65c36e19dc 100644 --- a/log-tree.c +++ b/log-tree.c @@ -410,7 +410,8 @@ void fmt_output_commit(struct strbuf *filename, struct pretty_print_context ctx = {0}; struct strbuf subject = STRBUF_INIT; - format_commit_message(commit, "%f", &subject, &ctx); + repo_format_commit_message(the_repository, commit, "%f", &subject, + &ctx); fmt_output_subject(filename, subject.buf, info); strbuf_release(&subject); } @@ -988,8 +989,10 @@ static int do_remerge_diff(struct rev_info *opt, o.msg_header_prefix = "remerge"; ctx.abbrev = DEFAULT_ABBREV; - format_commit_message(parent1, "%h (%s)", &parent1_desc, &ctx); - format_commit_message(parent2, "%h (%s)", &parent2_desc, &ctx); + repo_format_commit_message(the_repository, parent1, "%h (%s)", + &parent1_desc, &ctx); + repo_format_commit_message(the_repository, parent2, "%h (%s)", + &parent2_desc, &ctx); o.branch1 = parent1_desc.buf; o.branch2 = parent2_desc.buf; diff --git a/notes-cache.c b/notes-cache.c index 38466091360..e5e9092d367 100644 --- a/notes-cache.c +++ b/notes-cache.c @@ -23,7 +23,8 @@ static int notes_cache_match_validity(struct repository *r, return 0; memset(&pretty_ctx, 0, sizeof(pretty_ctx)); - format_commit_message(commit, "%s", &msg, &pretty_ctx); + repo_format_commit_message(the_repository, commit, "%s", &msg, + &pretty_ctx); strbuf_trim(&msg); ret = !strcmp(msg.buf, validity); diff --git a/object-name.c b/object-name.c index b297cbd0a18..c7cef682f20 100644 --- a/object-name.c +++ b/object-name.c @@ -395,8 +395,10 @@ static int show_ambiguous_object(const struct object_id *oid, void *data) if (commit) { struct pretty_print_context pp = {0}; pp.date_mode.type = DATE_SHORT; - format_commit_message(commit, "%ad", &date, &pp); - format_commit_message(commit, "%s", &msg, &pp); + repo_format_commit_message(the_repository, commit, + "%ad", &date, &pp); + repo_format_commit_message(the_repository, commit, + "%s", &msg, &pp); } /* diff --git a/pretty.c b/pretty.c index 34e0a3bc786..0ce6ab7e196 100644 --- a/pretty.c +++ b/pretty.c @@ -2202,7 +2202,8 @@ void pretty_print_commit(struct pretty_print_context *pp, int need_8bit_cte = pp->need_8bit_cte; if (pp->fmt == CMIT_FMT_USERFORMAT) { - format_commit_message(commit, user_format, sb, pp); + repo_format_commit_message(the_repository, commit, + user_format, sb, pp); return; } diff --git a/pretty.h b/pretty.h index 921dd6e0cae..421209e9ec2 100644 --- a/pretty.h +++ b/pretty.h @@ -120,10 +120,6 @@ void repo_format_commit_message(struct repository *r, const struct commit *commit, const char *format, struct strbuf *sb, const struct pretty_print_context *context); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define format_commit_message(c, f, s, con) \ - repo_format_commit_message(the_repository, c, f, s, con) -#endif /* * Parse given arguments from "arg", check it for correctness and diff --git a/sequencer.c b/sequencer.c index 749455a2597..d0ad37700fd 100644 --- a/sequencer.c +++ b/sequencer.c @@ -1341,8 +1341,10 @@ void print_commit_summary(struct repository *r, strbuf_addstr(&format, "format:%h] %s"); - format_commit_message(commit, "%an <%ae>", &author_ident, &pctx); - format_commit_message(commit, "%cn <%ce>", &committer_ident, &pctx); + repo_format_commit_message(the_repository, commit, "%an <%ae>", + &author_ident, &pctx); + repo_format_commit_message(the_repository, commit, "%cn <%ce>", + &committer_ident, &pctx); if (strbuf_cmp(&author_ident, &committer_ident)) { strbuf_addstr(&format, "\n Author: "); strbuf_addbuf_percentquote(&format, &author_ident); @@ -1350,7 +1352,8 @@ void print_commit_summary(struct repository *r, if (flags & SUMMARY_SHOW_AUTHOR_DATE) { struct strbuf date = STRBUF_INIT; - format_commit_message(commit, "%ad", &date, &pctx); + repo_format_commit_message(the_repository, commit, "%ad", + &date, &pctx); strbuf_addstr(&format, "\n Date: "); strbuf_addbuf_percentquote(&format, &date); strbuf_release(&date); @@ -2123,7 +2126,8 @@ static void refer_to_commit(struct replay_opts *opts, .abbrev = DEFAULT_ABBREV, .date_mode.type = DATE_SHORT, }; - format_commit_message(commit, "%h (%s, %ad)", msgbuf, &ctx); + repo_format_commit_message(the_repository, commit, + "%h (%s, %ad)", msgbuf, &ctx); } else { strbuf_addstr(msgbuf, oid_to_hex(&commit->object.oid)); } diff --git a/t/helper/test-revision-walking.c b/t/helper/test-revision-walking.c index 4a45d5bac2a..c7b22cb33d5 100644 --- a/t/helper/test-revision-walking.c +++ b/t/helper/test-revision-walking.c @@ -19,7 +19,8 @@ static void print_commit(struct commit *commit) struct strbuf sb = STRBUF_INIT; struct pretty_print_context ctx = {0}; ctx.date_mode.type = DATE_NORMAL; - format_commit_message(commit, " %m %s", &sb, &ctx); + repo_format_commit_message(the_repository, commit, " %m %s", &sb, + &ctx); printf("%s\n", sb.buf); strbuf_release(&sb); } From patchwork Tue Mar 28 13:58:52 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191116 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id C1F44C76196 for ; Tue, 28 Mar 2023 14:00:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233189AbjC1OAK (ORCPT ); Tue, 28 Mar 2023 10:00:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38882 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233057AbjC1N7e (ORCPT ); Tue, 28 Mar 2023 09:59:34 -0400 Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com [IPv6:2a00:1450:4864:20::433]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1A40AC16A for ; Tue, 28 Mar 2023 06:59:20 -0700 (PDT) Received: by mail-wr1-x433.google.com with SMTP id l27so12336750wrb.2 for ; Tue, 28 Mar 2023 06:59:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011959; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=19rcKh1VlGEoOIA7l8w/Tb7+Mmb0RGSkfwDqqd2/FTE=; b=eMA73ZOaY+t4ZLrSv7QgBjK6rALsyVzkjCeo0tWy1usu9lI3xZsLwc/2nQxzgGZjFu ScYNL74h9+VkNEfpyxSgUTNeJHJnwzMJu/6OtEHObH2C3phYQuSbrFcy2RxHBD5wTYDy ab27S8BvM+PcYnqTb5E70suWG1qbxqPxpERuEYZQ/RVVqLY7b4xICVqvr0ulFStyl/cY 90oqF7N/kqONVKejKd14swE2sFDabiDagRVLCHgljlPZObl2tSPXJik396gWTmBc6JBc 57ftXvajxkw2qnj1EPp2PBJGWjM4qaP0TS8OvMmsct1obJWXg5MkpZ+Mrdg9EsPq53tu IMZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011959; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=19rcKh1VlGEoOIA7l8w/Tb7+Mmb0RGSkfwDqqd2/FTE=; b=10IMa4vtKZKqeFTwgd3wSFhYSp+oG+iPBImIpl/MZQaU3nOCtt4o+oVLFzK2bdD8Q4 26kq7IChpekahV2uM/svQ6j5x5SdDN6QgQz4Gic7BsyXI6BpovZJoureQNOYaZ2cvnIm oy9t/o3vP6/6veL9k/lTtTIsbdcD6kuECw69/meVIN8nBfobFUyvThUUVbakAI1hLtaW zaeClrW9lI+/lOF8NEvza/6ykapwwfHiCuAsnQRYnEEX0pHkSuPthuhChn7jHWcWKgqX MSuR/zQ7ulLXC86RCubUpNAfm1OLKbkiffoFDnj8wNX/L6AWjIc1edlUVON+a1SLQlIw xLVw== X-Gm-Message-State: AAQBX9d96BvjTwSl9EoRTX1aGAa0HGs2aHuKog8ZJpqFa7MktCqIQXLr 3NARadQTeLJkeOeKDxTboqQ64IN6oRGFbw== X-Google-Smtp-Source: AKy350bxxwEvnCpmjELCEFvKf74L7uLugKO/vBUKgSEvUCrApGqI4f/VVNd1nNBguEv6/2o625vLRQ== X-Received: by 2002:adf:e44a:0:b0:2d0:33aa:26da with SMTP id t10-20020adfe44a000000b002d033aa26damr12259628wrm.7.1680011959078; Tue, 28 Mar 2023 06:59:19 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:18 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 11/17] cocci: apply the "packfile.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:52 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "packfile.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- builtin/gc.c | 2 +- commit-graph.c | 2 +- contrib/coccinelle/the_repository.cocci | 4 ++++ contrib/coccinelle/the_repository.pending.cocci | 4 ---- packfile.h | 1 - 5 files changed, 6 insertions(+), 7 deletions(-) diff --git a/builtin/gc.c b/builtin/gc.c index 9dc80344b64..a61d62bcf7b 100644 --- a/builtin/gc.c +++ b/builtin/gc.c @@ -285,7 +285,7 @@ static uint64_t total_ram(void) static uint64_t estimate_repack_memory(struct packed_git *pack) { - unsigned long nr_objects = approximate_object_count(); + unsigned long nr_objects = repo_approximate_object_count(the_repository); size_t os_cache, heap; if (!pack || !nr_objects) diff --git a/commit-graph.c b/commit-graph.c index a30c4c96940..6403567dfee 100644 --- a/commit-graph.c +++ b/commit-graph.c @@ -2361,7 +2361,7 @@ int write_commit_graph(struct object_directory *odb, replace = ctx->opts->split_flags & COMMIT_GRAPH_SPLIT_REPLACE; } - ctx->approx_nr_objects = approximate_object_count(); + ctx->approx_nr_objects = repo_approximate_object_count(the_repository); if (ctx->append && ctx->r->objects->commit_graph) { struct commit_graph *g = ctx->r->objects->commit_graph; diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index ff4c56114f1..a325361f961 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -91,6 +91,10 @@ | - format_commit_message + repo_format_commit_message +// packfile.h +| +- approximate_object_count ++ repo_approximate_object_count ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 375850e773c..9b426e49e66 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,11 +5,7 @@ @@ @@ ( -// packfile.h -- approximate_object_count -+ repo_approximate_object_count // promisor-remote.h -| - promisor_remote_reinit + repo_promisor_remote_reinit | diff --git a/packfile.h b/packfile.h index a3f6723857b..6ec16567971 100644 --- a/packfile.h +++ b/packfile.h @@ -65,7 +65,6 @@ struct packed_git *get_all_packs(struct repository *r); * for speed. */ unsigned long repo_approximate_object_count(struct repository *r); -#define approximate_object_count() repo_approximate_object_count(the_repository) struct packed_git *find_sha1_pack(const unsigned char *sha1, struct packed_git *packs); From patchwork Tue Mar 28 13:58:53 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191117 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id CD174C6FD18 for ; Tue, 28 Mar 2023 14:00:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233026AbjC1OAN (ORCPT ); Tue, 28 Mar 2023 10:00:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39510 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233081AbjC1N7f (ORCPT ); Tue, 28 Mar 2023 09:59:35 -0400 Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [IPv6:2a00:1450:4864:20::333]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F2645C66F for ; Tue, 28 Mar 2023 06:59:21 -0700 (PDT) Received: by mail-wm1-x333.google.com with SMTP id u11-20020a05600c19cb00b003edcc414997so7527726wmq.3 for ; Tue, 28 Mar 2023 06:59:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011960; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+CeMEwpMTkkvg6aJ9wOVnmX717PmvaqOPLKH9MnlQrA=; b=XapRNDDulD2Guad2/ZHnuzFWgFHCe/MzqJH9dGMppFnHnqFdLwLl2qlOJsYT7wiJ6i b9y4pLTWye5WpPo8pj/VdM1gHaBmkiYVZ4RHZ21rFxJwOuj8i4UNV8ZPVoPFt38RYTFy zed/2aqBLg9Ov75F0ve7Trw/RnkqvBcgt5EN73mGVbf774dUI4I7hQUBOvk7UQPX2fcY g9rqS1R2eYR4/wNalXY51pMXMEsUZYmw7uNQC9ZueJUCrQQ+Dv98OfilxiRCz4/guAk9 YNtbMJnVlXb4lkMkN7n6kpzuUJeQXclwx00E1GOGDTsEk+dNd1rogM39pe5RwXtf/tTj L0oA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011960; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+CeMEwpMTkkvg6aJ9wOVnmX717PmvaqOPLKH9MnlQrA=; b=aD8tKp4UWDM2pg7erA6Us6BJvcVEz7k5TvzM+88ErUgn/pcTszKle4U8RcLdpkNqfF oDO3QFcSoAK2eUVrs1x8EKy86zCpsDd6/To8mXi75cZ0DqggGKG8qABYyHb7lW6D28jL oz0eCtkXXMVF+3+A2bub19KiQbCR4x4H+gKjy5+U2LRazkgcrUHuvHPapSvOl43U9Zyq DturUMOG7eFBjQ3WZm8TQo9vrRbQPQE6rSUZ8dKyrYzIBX+kMciDSv6DUse59IxDdJKc vrAaTGuLAIRKeltZL/fUNf46GbHKbUCTLXjWIxWfH7MWS5YPiXSoc1PPQTkQCxmIWc1e b60g== X-Gm-Message-State: AO0yUKUtmVbTfDyVdLbkVEqvAWxnKxhTtF8okaU214XhbliHWkm5O0kv 3aILsKtEKPYXy8/NomG6jNmJjfzWkEsGDA== X-Google-Smtp-Source: AK7set/T/DfyDirr8GGipn71S1Y/iOYqV8G3+vkTdFu3zAV12wDi42l6JqRmEy8PtAZO/+B/Nc3Nnw== X-Received: by 2002:a7b:cd0d:0:b0:3ed:30cb:5569 with SMTP id f13-20020a7bcd0d000000b003ed30cb5569mr11196951wmj.20.1680011960125; Tue, 28 Mar 2023 06:59:20 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:19 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 12/17] cocci: apply the "promisor-remote.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:53 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "promisor-remote.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- builtin/cat-file.c | 2 +- builtin/fetch.c | 4 ++-- builtin/gc.c | 2 +- builtin/index-pack.c | 2 +- builtin/pack-objects.c | 2 +- builtin/repack.c | 2 +- cache-tree.c | 4 ++-- connected.c | 4 ++-- contrib/coccinelle/the_repository.cocci | 10 ++++++++++ contrib/coccinelle/the_repository.pending.cocci | 10 ---------- diff.c | 2 +- diffcore-break.c | 2 +- diffcore-rename.c | 4 ++-- list-objects-filter-options.c | 7 ++++--- merge-ort.c | 2 +- packfile.c | 2 +- promisor-remote.h | 15 --------------- unpack-trees.c | 2 +- 18 files changed, 32 insertions(+), 46 deletions(-) diff --git a/builtin/cat-file.c b/builtin/cat-file.c index a7bcb55b40d..44d202aa55b 100644 --- a/builtin/cat-file.c +++ b/builtin/cat-file.c @@ -796,7 +796,7 @@ static int batch_objects(struct batch_options *opt) if (!memcmp(&data.info, &empty, sizeof(empty))) data.skip_object_info = 1; - if (has_promisor_remote()) + if (repo_has_promisor_remote(the_repository)) warning("This repository uses promisor remotes. Some objects may not be loaded."); read_replace_refs = 0; diff --git a/builtin/fetch.c b/builtin/fetch.c index 0ee5d269768..4198e1c1a84 100644 --- a/builtin/fetch.c +++ b/builtin/fetch.c @@ -2015,7 +2015,7 @@ static inline void fetch_one_setup_partial(struct remote *remote) * If no prior partial clone/fetch and the current fetch DID NOT * request a partial-fetch, do a normal fetch. */ - if (!has_promisor_remote() && !filter_options.choice) + if (!repo_has_promisor_remote(the_repository) && !filter_options.choice) return; /* @@ -2271,7 +2271,7 @@ int cmd_fetch(int argc, const char **argv, const char *prefix) printf("%s\n", oid_to_hex(oid)); oidset_clear(&acked_commits); } else if (remote) { - if (filter_options.choice || has_promisor_remote()) + if (filter_options.choice || repo_has_promisor_remote(the_repository)) fetch_one_setup_partial(remote); result = fetch_one(remote, argc, argv, prune_tags_ok, stdin_refspecs); } else { diff --git a/builtin/gc.c b/builtin/gc.c index a61d62bcf7b..a204b301ac4 100644 --- a/builtin/gc.c +++ b/builtin/gc.c @@ -700,7 +700,7 @@ int cmd_gc(int argc, const char **argv, const char *prefix) strvec_push(&prune, prune_expire); if (quiet) strvec_push(&prune, "--no-progress"); - if (has_promisor_remote()) + if (repo_has_promisor_remote(the_repository)) strvec_push(&prune, "--exclude-promisor-objects"); prune_cmd.git_cmd = 1; diff --git a/builtin/index-pack.c b/builtin/index-pack.c index e823a73b357..6bd95f54d6e 100644 --- a/builtin/index-pack.c +++ b/builtin/index-pack.c @@ -1393,7 +1393,7 @@ static void fix_unresolved_deltas(struct hashfile *f) sorted_by_pos[i] = &ref_deltas[i]; QSORT(sorted_by_pos, nr_ref_deltas, delta_pos_compare); - if (has_promisor_remote()) { + if (repo_has_promisor_remote(the_repository)) { /* * Prefetch the delta bases. */ diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c index 068e6326c1d..bcf10d543f1 100644 --- a/builtin/pack-objects.c +++ b/builtin/pack-objects.c @@ -2080,7 +2080,7 @@ static void check_object(struct object_entry *entry, uint32_t object_index) if (oid_object_info_extended(the_repository, &entry->idx.oid, &oi, OBJECT_INFO_SKIP_FETCH_OBJECT | OBJECT_INFO_LOOKUP_REPLACE) < 0) { - if (has_promisor_remote()) { + if (repo_has_promisor_remote(the_repository)) { prefetch_to_pack(object_index); if (oid_object_info_extended(the_repository, &entry->idx.oid, &oi, OBJECT_INFO_SKIP_FETCH_OBJECT | OBJECT_INFO_LOOKUP_REPLACE) < 0) diff --git a/builtin/repack.c b/builtin/repack.c index 87f73c8923a..ab4c55b50fc 100644 --- a/builtin/repack.c +++ b/builtin/repack.c @@ -903,7 +903,7 @@ int cmd_repack(int argc, const char **argv, const char *prefix) strvec_push(&cmd.args, "--reflog"); strvec_push(&cmd.args, "--indexed-objects"); } - if (has_promisor_remote()) + if (repo_has_promisor_remote(the_repository)) strvec_push(&cmd.args, "--exclude-promisor-objects"); if (!write_midx) { if (write_bitmaps > 0) diff --git a/cache-tree.c b/cache-tree.c index d71b9befd9a..12206eeaa3c 100644 --- a/cache-tree.c +++ b/cache-tree.c @@ -242,7 +242,7 @@ int cache_tree_fully_valid(struct cache_tree *it) static int must_check_existence(const struct cache_entry *ce) { - return !(has_promisor_remote() && ce_skip_worktree(ce)); + return !(repo_has_promisor_remote(the_repository) && ce_skip_worktree(ce)); } static int update_one(struct cache_tree *it, @@ -472,7 +472,7 @@ int cache_tree_update(struct index_state *istate, int flags) if (!istate->cache_tree) istate->cache_tree = cache_tree(); - if (!(flags & WRITE_TREE_MISSING_OK) && has_promisor_remote()) + if (!(flags & WRITE_TREE_MISSING_OK) && repo_has_promisor_remote(the_repository)) prefetch_cache_entries(istate, must_check_existence); trace_performance_enter(); diff --git a/connected.c b/connected.c index 39cb1e1074d..0b7be81237d 100644 --- a/connected.c +++ b/connected.c @@ -55,7 +55,7 @@ int check_connected(oid_iterate_fn fn, void *cb_data, strbuf_release(&idx_file); } - if (has_promisor_remote()) { + if (repo_has_promisor_remote(the_repository)) { /* * For partial clones, we don't want to have to do a regular * connectivity check because we have to enumerate and exclude @@ -98,7 +98,7 @@ int check_connected(oid_iterate_fn fn, void *cb_data, strvec_push(&rev_list.args,"rev-list"); strvec_push(&rev_list.args, "--objects"); strvec_push(&rev_list.args, "--stdin"); - if (has_promisor_remote()) + if (repo_has_promisor_remote(the_repository)) strvec_push(&rev_list.args, "--exclude-promisor-objects"); if (!opt->is_deepening_fetch) { strvec_push(&rev_list.args, "--not"); diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index a325361f961..d5b644a8687 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -95,6 +95,16 @@ | - approximate_object_count + repo_approximate_object_count +// promisor-remote.h +| +- promisor_remote_reinit ++ repo_promisor_remote_reinit +| +- promisor_remote_find ++ repo_promisor_remote_find +| +- has_promisor_remote ++ repo_has_promisor_remote ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 9b426e49e66..e17a60198c5 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,17 +5,7 @@ @@ @@ ( -// promisor-remote.h -- promisor_remote_reinit -+ repo_promisor_remote_reinit -| -- promisor_remote_find -+ repo_promisor_remote_find -| -- has_promisor_remote -+ repo_has_promisor_remote // refs.h -| - dwim_ref + repo_dwim_ref // rerere.h diff --git a/diff.c b/diff.c index 81f115d32c9..b0a810fbee3 100644 --- a/diff.c +++ b/diff.c @@ -6885,7 +6885,7 @@ void diffcore_std(struct diff_options *options) * If no prefetching occurs, diffcore_rename() will prefetch if it * decides that it needs inexact rename detection. */ - if (options->repo == the_repository && has_promisor_remote() && + if (options->repo == the_repository && repo_has_promisor_remote(the_repository) && (options->output_format & output_formats_to_prefetch || options->pickaxe_opts & DIFF_PICKAXE_KINDS_MASK)) diff_queued_diff_prefetch(options->repo); diff --git a/diffcore-break.c b/diffcore-break.c index 0d4a14964d0..5462420bbbe 100644 --- a/diffcore-break.c +++ b/diffcore-break.c @@ -65,7 +65,7 @@ static int should_break(struct repository *r, oideq(&src->oid, &dst->oid)) return 0; /* they are the same */ - if (r == the_repository && has_promisor_remote()) { + if (r == the_repository && repo_has_promisor_remote(the_repository)) { options.missing_object_cb = diff_queued_diff_prefetch; options.missing_object_data = r; } diff --git a/diffcore-rename.c b/diffcore-rename.c index 7e9ff96d435..8e2e7a3ad73 100644 --- a/diffcore-rename.c +++ b/diffcore-rename.c @@ -986,7 +986,7 @@ static int find_basename_matches(struct diff_options *options, strintmap_set(&dests, base, i); } - if (options->repo == the_repository && has_promisor_remote()) { + if (options->repo == the_repository && repo_has_promisor_remote(the_repository)) { dpf_options.missing_object_cb = basename_prefetch; dpf_options.missing_object_data = &prefetch_options; } @@ -1572,7 +1572,7 @@ void diffcore_rename_extended(struct diff_options *options, /* Finish setting up dpf_options */ prefetch_options.skip_unmodified = skip_unmodified; - if (options->repo == the_repository && has_promisor_remote()) { + if (options->repo == the_repository && repo_has_promisor_remote(the_repository)) { dpf_options.missing_object_cb = inexact_prefetch; dpf_options.missing_object_data = &prefetch_options; } diff --git a/list-objects-filter-options.c b/list-objects-filter-options.c index 1d25a5737db..b82ba0a2e5b 100644 --- a/list-objects-filter-options.c +++ b/list-objects-filter-options.c @@ -343,7 +343,7 @@ void partial_clone_register( char *filter_name; /* Check if it is already registered */ - if ((promisor_remote = promisor_remote_find(remote))) { + if ((promisor_remote = repo_promisor_remote_find(the_repository, remote))) { if (promisor_remote->partial_clone_filter) /* * Remote is already registered and a filter is already @@ -371,14 +371,15 @@ void partial_clone_register( free(filter_name); /* Make sure the config info are reset */ - promisor_remote_reinit(); + repo_promisor_remote_reinit(the_repository); } void partial_clone_get_default_filter_spec( struct list_objects_filter_options *filter_options, const char *remote) { - struct promisor_remote *promisor = promisor_remote_find(remote); + struct promisor_remote *promisor = repo_promisor_remote_find(the_repository, + remote); struct strbuf errbuf = STRBUF_INIT; /* diff --git a/merge-ort.c b/merge-ort.c index 607e2c263f1..dace4073a06 100644 --- a/merge-ort.c +++ b/merge-ort.c @@ -4217,7 +4217,7 @@ static void prefetch_for_content_merges(struct merge_options *opt, struct string_list_item *e; struct oid_array to_fetch = OID_ARRAY_INIT; - if (opt->repo != the_repository || !has_promisor_remote()) + if (opt->repo != the_repository || !repo_has_promisor_remote(the_repository)) return; for (e = &plist->items[plist->nr-1]; e >= plist->items; --e) { diff --git a/packfile.c b/packfile.c index 2023df1b75b..53fcc0f44c9 100644 --- a/packfile.c +++ b/packfile.c @@ -2275,7 +2275,7 @@ int is_promisor_object(const struct object_id *oid) static int promisor_objects_prepared; if (!promisor_objects_prepared) { - if (has_promisor_remote()) { + if (repo_has_promisor_remote(the_repository)) { for_each_packed_object(add_promisor_object, &promisor_objects, FOR_EACH_OBJECT_PROMISOR_ONLY | diff --git a/promisor-remote.h b/promisor-remote.h index df36eb08efc..2cb9eda9ea4 100644 --- a/promisor-remote.h +++ b/promisor-remote.h @@ -18,24 +18,9 @@ struct promisor_remote { }; void repo_promisor_remote_reinit(struct repository *r); -static inline void promisor_remote_reinit(void) -{ - repo_promisor_remote_reinit(the_repository); -} - void promisor_remote_clear(struct promisor_remote_config *config); - struct promisor_remote *repo_promisor_remote_find(struct repository *r, const char *remote_name); -static inline struct promisor_remote *promisor_remote_find(const char *remote_name) -{ - return repo_promisor_remote_find(the_repository, remote_name); -} - int repo_has_promisor_remote(struct repository *r); -static inline int has_promisor_remote(void) -{ - return repo_has_promisor_remote(the_repository); -} /* * Fetches all requested objects from all promisor remotes, trying them one at diff --git a/unpack-trees.c b/unpack-trees.c index a75fb9f05b4..8a284d8a4da 100644 --- a/unpack-trees.c +++ b/unpack-trees.c @@ -459,7 +459,7 @@ static int check_updates(struct unpack_trees_options *o, if (should_update_submodules()) load_gitmodules_file(index, &state); - if (has_promisor_remote()) + if (repo_has_promisor_remote(the_repository)) /* * Prefetch the objects that are to be checked out in the loop * below. From patchwork Tue Mar 28 13:58:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191119 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id C1868C6FD18 for ; Tue, 28 Mar 2023 14:00:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233239AbjC1OAX (ORCPT ); Tue, 28 Mar 2023 10:00:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40084 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230378AbjC1N7n (ORCPT ); Tue, 28 Mar 2023 09:59:43 -0400 Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com [IPv6:2a00:1450:4864:20::32f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 10723A5F0 for ; Tue, 28 Mar 2023 06:59:23 -0700 (PDT) Received: by mail-wm1-x32f.google.com with SMTP id o24-20020a05600c511800b003ef59905f26so7501871wms.2 for ; Tue, 28 Mar 2023 06:59:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011961; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0vDO+bTGNjndgBrXRgxCPXqw0yfWB7wc/ki+K9J9uNU=; b=VGJ41Glfr05AscU34NfvW7shXnMeMxFvIb84sXjFSuBjPcAwcOzoLsBzUtRdyKNrWd nFX22+Z5/98My088aHidmebofoBnZKOCe/6pIOiihfDSF0eNwrawCCtia1jSQF/EFubz +6+NtGvjztROlySRdBfCQYdX8ruDKq7NW/olVMX1aIPGywH0/0LO7JAy1KeKjrtHgqtE z8OOmP+urfc3W/cg0k7cdXrHKBdIOvy+jojYYcKvmkC0AIg9nni/fZ7mhnyds6aoyl+4 /3WU0lB0HmV2ecKiJk4URU/KBNhew6G0oBEdU14yPQb+QcROCtVLo6vycBWnSKJnTCOk ai2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011961; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0vDO+bTGNjndgBrXRgxCPXqw0yfWB7wc/ki+K9J9uNU=; b=fb3wMK30aoz/isjbUWKL8Gblpgkt6aTLiifQGjLmZ+pUSdKqevnO9JN3AM3boB/5jk nfyjk00i1uvpjW92sxbxBneOCzVAz1m2bvtfVYJXT6rQ/TtpX2uEbSNcPEw3oEfQ8wTt F4tw/59Rkf3rUr7khldTifLvdSnnyA0LHX4CeroBtJAuyGMS5Cdfaq784+RwErkfgxSn oZP5KMEeXEgfJxVeXW8SzpdgrhLpizxk3oFXAn44Xxc6Tit/7rl6xZ7sPcOtFRMRK6Xh kXwDL/PnxigqE5h1+7O8ilqNdHnIMXr1keec5nP1kcaG6GHxkUHMeCukhQhMJpTBxWt7 JOig== X-Gm-Message-State: AO0yUKU+dzuSZBEt3g+JZUfULhmM4LZ2th37fDqSkyPECN+a4+NbpTfh JfM9a3uR75zei5N2vw+LUnVoVIJSBshjEw== X-Google-Smtp-Source: AK7set8EGf95+gTjtWSdeT2NeVckcdw8gy3U8BrxrrBQqRabs37d8Ol5X2Kiloixd4cUGApGDQAFQg== X-Received: by 2002:a1c:7309:0:b0:3ee:697e:cf0b with SMTP id d9-20020a1c7309000000b003ee697ecf0bmr12157702wmb.14.1680011961137; Tue, 28 Mar 2023 06:59:21 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:20 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 13/17] cocci: apply the "refs.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:54 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "refs.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- archive.c | 5 +++-- branch.c | 3 ++- builtin/checkout.c | 6 ++++-- builtin/fast-export.c | 3 ++- builtin/log.c | 3 ++- builtin/merge.c | 3 ++- builtin/reset.c | 3 ++- builtin/rev-parse.c | 4 +++- builtin/show-branch.c | 3 ++- builtin/stash.c | 3 ++- bundle.c | 3 ++- commit.c | 3 ++- contrib/coccinelle/the_repository.cocci | 4 ++++ contrib/coccinelle/the_repository.pending.cocci | 4 ---- refs.h | 6 ------ remote.c | 5 +++-- wt-status.c | 3 ++- 17 files changed, 37 insertions(+), 27 deletions(-) diff --git a/archive.c b/archive.c index 98de324362a..933e5b39b92 100644 --- a/archive.c +++ b/archive.c @@ -458,10 +458,11 @@ static void parse_treeish_arg(const char **argv, const char *colon = strchrnul(name, ':'); int refnamelen = colon - name; - if (!dwim_ref(name, refnamelen, &oid, &ref, 0)) + if (!repo_dwim_ref(the_repository, name, refnamelen, &oid, &ref, 0)) die(_("no such ref: %.*s"), refnamelen, name); } else { - dwim_ref(name, strlen(name), &oid, &ref, 0); + repo_dwim_ref(the_repository, name, strlen(name), &oid, &ref, + 0); } if (repo_get_oid(the_repository, name, &oid)) diff --git a/branch.c b/branch.c index efea29af1ac..179353e7653 100644 --- a/branch.c +++ b/branch.c @@ -542,7 +542,8 @@ static void dwim_branch_start(struct repository *r, const char *start_name, die(_("not a valid object name: '%s'"), start_name); } - switch (dwim_ref(start_name, strlen(start_name), &oid, &real_ref, 0)) { + switch (repo_dwim_ref(the_repository, start_name, strlen(start_name), + &oid, &real_ref, 0)) { case 0: /* Not branching from any existing branch */ if (explicit_tracking) diff --git a/builtin/checkout.c b/builtin/checkout.c index ad6d5304b64..fcede4600a5 100644 --- a/builtin/checkout.c +++ b/builtin/checkout.c @@ -717,7 +717,8 @@ static void setup_branch_path(struct branch_info *branch) * If this is a ref, resolve it; otherwise, look up the OID for our * expression. Failure here is okay. */ - if (!dwim_ref(branch->name, strlen(branch->name), &branch->oid, &branch->refname, 0)) + if (!repo_dwim_ref(the_repository, branch->name, strlen(branch->name), + &branch->oid, &branch->refname, 0)) repo_get_oid_committish(the_repository, branch->name, &branch->oid); strbuf_branchname(&buf, branch->name, INTERPRET_BRANCH_LOCAL); @@ -1438,7 +1439,8 @@ static void die_expecting_a_branch(const struct branch_info *branch_info) char *to_free; int code; - if (dwim_ref(branch_info->name, strlen(branch_info->name), &oid, &to_free, 0) == 1) { + if (repo_dwim_ref(the_repository, branch_info->name, + strlen(branch_info->name), &oid, &to_free, 0) == 1) { const char *ref = to_free; if (skip_prefix(ref, "refs/tags/", &ref)) diff --git a/builtin/fast-export.c b/builtin/fast-export.c index 166f51b100a..2f728a44115 100644 --- a/builtin/fast-export.c +++ b/builtin/fast-export.c @@ -919,7 +919,8 @@ static void get_tags_and_duplicates(struct rev_cmdline_info *info) if (e->flags & UNINTERESTING) continue; - if (dwim_ref(e->name, strlen(e->name), &oid, &full_name, 0) != 1) + if (repo_dwim_ref(the_repository, e->name, strlen(e->name), + &oid, &full_name, 0) != 1) continue; if (refspecs.nr) { diff --git a/builtin/log.c b/builtin/log.c index 28085547aa8..ba24fa4bfdb 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -1218,7 +1218,8 @@ static char *find_branch_name(struct rev_info *rev) return NULL; ref = rev->cmdline.rev[positive].name; tip_oid = &rev->cmdline.rev[positive].item->oid; - if (dwim_ref(ref, strlen(ref), &branch_oid, &full_ref, 0) && + if (repo_dwim_ref(the_repository, ref, strlen(ref), &branch_oid, + &full_ref, 0) && skip_prefix(full_ref, "refs/heads/", &v) && oideq(tip_oid, &branch_oid)) branch = xstrdup(v); diff --git a/builtin/merge.c b/builtin/merge.c index 559aab1c380..6538a4bae95 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -519,7 +519,8 @@ static void merge_name(const char *remote, struct strbuf *msg) if (!remote_head) die(_("'%s' does not point to a commit"), remote); - if (dwim_ref(remote, strlen(remote), &branch_head, &found_ref, 0) > 0) { + if (repo_dwim_ref(the_repository, remote, strlen(remote), &branch_head, + &found_ref, 0) > 0) { if (starts_with(found_ref, "refs/heads/")) { strbuf_addf(msg, "%s\t\tbranch '%s' of .\n", oid_to_hex(&branch_head), remote); diff --git a/builtin/reset.c b/builtin/reset.c index cd4165537c5..c2a390b3a01 100644 --- a/builtin/reset.c +++ b/builtin/reset.c @@ -467,7 +467,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix) char *ref = NULL; int err; - dwim_ref(rev, strlen(rev), &dummy, &ref, 0); + repo_dwim_ref(the_repository, rev, strlen(rev), + &dummy, &ref, 0); if (ref && !starts_with(ref, "refs/")) FREE_AND_NULL(ref); diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c index 4969815ca79..5662101a102 100644 --- a/builtin/rev-parse.c +++ b/builtin/rev-parse.c @@ -138,7 +138,9 @@ static void show_rev(int type, const struct object_id *oid, const char *name) struct object_id discard; char *full; - switch (dwim_ref(name, strlen(name), &discard, &full, 0)) { + switch (repo_dwim_ref(the_repository, name, + strlen(name), &discard, &full, + 0)) { case 0: /* * Not found -- not a ref. We could diff --git a/builtin/show-branch.c b/builtin/show-branch.c index 7aea28f5b06..70bc461638c 100644 --- a/builtin/show-branch.c +++ b/builtin/show-branch.c @@ -747,7 +747,8 @@ int cmd_show_branch(int ac, const char **av, const char *prefix) die(Q_("only %d entry can be shown at one time.", "only %d entries can be shown at one time.", MAX_REVS), MAX_REVS); - if (!dwim_ref(*av, strlen(*av), &oid, &ref, 0)) + if (!repo_dwim_ref(the_repository, *av, strlen(*av), &oid, + &ref, 0)) die(_("no such ref %s"), *av); /* Has the base been specified? */ diff --git a/builtin/stash.c b/builtin/stash.c index 447c3b678f3..60052ec9d7b 100644 --- a/builtin/stash.c +++ b/builtin/stash.c @@ -212,7 +212,8 @@ static int get_stash_info(struct stash_info *info, int argc, const char **argv) end_of_rev = strchrnul(revision, '@'); strbuf_add(&symbolic, revision, end_of_rev - revision); - ret = dwim_ref(symbolic.buf, symbolic.len, &dummy, &expanded_ref, 0); + ret = repo_dwim_ref(the_repository, symbolic.buf, symbolic.len, + &dummy, &expanded_ref, 0); strbuf_release(&symbolic); switch (ret) { case 0: /* Not found, but valid ref */ diff --git a/bundle.c b/bundle.c index bce0c7f99e8..73f0b1b89d6 100644 --- a/bundle.c +++ b/bundle.c @@ -383,7 +383,8 @@ static int write_bundle_refs(int bundle_fd, struct rev_info *revs) if (e->item->flags & UNINTERESTING) continue; - if (dwim_ref(e->name, strlen(e->name), &oid, &ref, 0) != 1) + if (repo_dwim_ref(the_repository, e->name, strlen(e->name), + &oid, &ref, 0) != 1) goto skip_write_ref; if (read_ref_full(e->name, RESOLVE_REF_READING, &oid, &flag)) flag = 0; diff --git a/commit.c b/commit.c index cfd14f7d975..8e22bebd0e1 100644 --- a/commit.c +++ b/commit.c @@ -999,7 +999,8 @@ struct commit *get_fork_point(const char *refname, struct commit *commit) struct commit *ret = NULL; char *full_refname; - switch (dwim_ref(refname, strlen(refname), &oid, &full_refname, 0)) { + switch (repo_dwim_ref(the_repository, refname, strlen(refname), &oid, + &full_refname, 0)) { case 0: die("No such ref: '%s'", refname); case 1: diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index d5b644a8687..b20a3e70845 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -105,6 +105,10 @@ | - has_promisor_remote + repo_has_promisor_remote +// refs.h +| +- dwim_ref ++ repo_dwim_ref ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index e17a60198c5..8bf30798a04 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,11 +5,7 @@ @@ @@ ( -// refs.h -- dwim_ref -+ repo_dwim_ref // rerere.h -| - rerere + repo_rerere // revision.h diff --git a/refs.h b/refs.h index 935cdd1ece3..2998244b615 100644 --- a/refs.h +++ b/refs.h @@ -159,12 +159,6 @@ int expand_ref(struct repository *r, const char *str, int len, struct object_id int repo_dwim_ref(struct repository *r, const char *str, int len, struct object_id *oid, char **ref, int nonfatal_dangling_mark); int repo_dwim_log(struct repository *r, const char *str, int len, struct object_id *oid, char **ref); -static inline int dwim_ref(const char *str, int len, struct object_id *oid, - char **ref, int nonfatal_dangling_mark) -{ - return repo_dwim_ref(the_repository, str, len, oid, ref, - nonfatal_dangling_mark); -} int dwim_log(const char *str, int len, struct object_id *oid, char **ref); /* diff --git a/remote.c b/remote.c index 9219ebb8962..c51180bebb4 100644 --- a/remote.c +++ b/remote.c @@ -1810,8 +1810,9 @@ static void set_merge(struct remote_state *remote_state, struct branch *ret) if (!remote_find_tracking(remote, ret->merge[i]) || strcmp(ret->remote_name, ".")) continue; - if (dwim_ref(ret->merge_name[i], strlen(ret->merge_name[i]), - &oid, &ref, 0) == 1) + if (repo_dwim_ref(the_repository, ret->merge_name[i], + strlen(ret->merge_name[i]), &oid, &ref, + 0) == 1) ret->merge[i]->dst = ref; else ret->merge[i]->dst = xstrdup(ret->merge_name[i]); diff --git a/wt-status.c b/wt-status.c index 0f0b92eece4..84726d26dc9 100644 --- a/wt-status.c +++ b/wt-status.c @@ -1665,7 +1665,8 @@ static void wt_status_get_detached_from(struct repository *r, return; } - if (dwim_ref(cb.buf.buf, cb.buf.len, &oid, &ref, 1) == 1 && + if (repo_dwim_ref(the_repository, cb.buf.buf, cb.buf.len, &oid, &ref, + 1) == 1 && /* oid is a commit? match without further lookup */ (oideq(&cb.noid, &oid) || /* perhaps oid is a tag, try to dereference to a commit */ From patchwork Tue Mar 28 13:58:55 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191120 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B6B91C76196 for ; Tue, 28 Mar 2023 14:00:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233017AbjC1OAe (ORCPT ); Tue, 28 Mar 2023 10:00:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38812 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232921AbjC1N75 (ORCPT ); Tue, 28 Mar 2023 09:59:57 -0400 Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [IPv6:2a00:1450:4864:20::331]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4FB63C667 for ; Tue, 28 Mar 2023 06:59:24 -0700 (PDT) Received: by mail-wm1-x331.google.com with SMTP id d11-20020a05600c3acb00b003ef6e6754c5so4048454wms.5 for ; Tue, 28 Mar 2023 06:59:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011962; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=vi9k8ZLjAcBF+cXO42OWKevb5t874fQ2nMdPuvd7wAc=; b=qtOO5N2ZdPq/LLIPzRJiklqHKfDiJR9aWx9omXJ/KHwzIdotj4r9VAlUQy4NXRs2SJ +hG+lrO5bxMYqb7SnF45eeeme+SP83xynpgnSv0lHGa1mpkUHvAxuC04soc9pO5UMUy7 7asPlHE3zlfZFPtHAqDjCwwCj+/XiUl6NLlQ2+HTTz4iCnpCRlDDvovuUo36ZxIFiyjX IntRWopPth451B8VXhRJmLqDDV2U0E/57KeGfwpR1JzwHSBytQKdVc/Pu/rzo7PzD+xM XydsDMljL3jCEHCUxG+ToGE0fASQSk8IMPPlfkeUoBufvK4V/0wzLx5yLuJbLY+Gm05B Ecog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011962; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=vi9k8ZLjAcBF+cXO42OWKevb5t874fQ2nMdPuvd7wAc=; b=kTjmfxb63/dKlLEI1j9WdOcklG79y0Uh9Sj6lgJva/RqRTVibw0XXJSFf9ihGu90ds DEvvMqJzuctT5XZlNB9oFK6TLPBegb6F/ssNVFdCFJob8K//UQlwKKNxAJ3XS7CY7M/n g9s8iLRvd2HQddNkn3dtadWosqh2Ip7sGP7nw3QaDnoBpmMywi+bU16P6egJ67u8SxdM 8JB1aY3HnmYSKk2vqQFngVT2sSYuUhrEQF3LPrxzB27d1F/7aEi7doroqKc0i/iyXb6d GGJYroA+i+KChmzeCyXG7ZJM9A4Xqe4XjtWuxKYbR3FAxWvLufJlvDaxuCbfidXxtcB6 pBlg== X-Gm-Message-State: AO0yUKUfuaRie71GU1766po7sdlEpGh3lb455VbnSRRFiNlD8rF3ER6v ZT9Z6VsOwTtJ9gQwrFZdc0dWlAiM7lh0JA== X-Google-Smtp-Source: AK7set91maXWw3covquSaHORdgL7wR1s5A/ukg4d73lE8Srtwq+w2Xfl1E1nyRRiZEZqKUMFUK8dBQ== X-Received: by 2002:a05:600c:21d8:b0:3ee:5d1d:6c2d with SMTP id x24-20020a05600c21d800b003ee5d1d6c2dmr11585025wmj.35.1680011962180; Tue, 28 Mar 2023 06:59:22 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:21 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 14/17] cocci: apply the "rerere.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:55 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "rerere.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- builtin/stash.c | 2 +- contrib/coccinelle/the_repository.cocci | 4 ++++ contrib/coccinelle/the_repository.pending.cocci | 4 ---- rerere.h | 3 --- 4 files changed, 5 insertions(+), 8 deletions(-) diff --git a/builtin/stash.c b/builtin/stash.c index 60052ec9d7b..b60c82f7af2 100644 --- a/builtin/stash.c +++ b/builtin/stash.c @@ -602,7 +602,7 @@ static int do_apply_stash(const char *prefix, struct stash_info *info, ret = error(_("could not write index")); if (ret) { - rerere(0); + repo_rerere(the_repository, 0); if (index) fprintf_ln(stderr, _("Index was not unstashed.")); diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index b20a3e70845..1d1ac7d4fc5 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -109,6 +109,10 @@ | - dwim_ref + repo_dwim_ref +// rerere.h +| +- rerere ++ repo_rerere ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci index 8bf30798a04..1190a3312bd 100644 --- a/contrib/coccinelle/the_repository.pending.cocci +++ b/contrib/coccinelle/the_repository.pending.cocci @@ -5,11 +5,7 @@ @@ @@ ( -// rerere.h -- rerere -+ repo_rerere // revision.h -| - init_revisions + repo_init_revisions ) diff --git a/rerere.h b/rerere.h index c32d79c3bd8..876c316321e 100644 --- a/rerere.h +++ b/rerere.h @@ -24,9 +24,6 @@ struct rerere_id { }; int setup_rerere(struct repository *,struct string_list *, int); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define rerere(flags) repo_rerere(the_repository, flags) -#endif int repo_rerere(struct repository *, int); /* * Given the conflict ID and the name of a "file" used for replaying From patchwork Tue Mar 28 13:58:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191121 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A74E8C6FD18 for ; Tue, 28 Mar 2023 14:00:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233244AbjC1OAg (ORCPT ); Tue, 28 Mar 2023 10:00:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40718 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233143AbjC1N76 (ORCPT ); Tue, 28 Mar 2023 09:59:58 -0400 Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com [IPv6:2a00:1450:4864:20::32c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ED730C659 for ; Tue, 28 Mar 2023 06:59:24 -0700 (PDT) Received: by mail-wm1-x32c.google.com with SMTP id i5-20020a05600c354500b003edd24054e0so9490759wmq.4 for ; Tue, 28 Mar 2023 06:59:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011963; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=FQPB7xv25mD+qPlsfdEHWuQM3h7wEXK4ApXoqkMKqPo=; b=QLr06ke92e+mEw5Mlt6o1YS8UFud+LW4fLNugmiY5vFQEKESyKoIpsG5IaWkRXiT5E OwXKKLHRmdPGK9WCbSgvkI8ksF28L5XqDlc4yeyba2tR7Id9kuHDnyyNzE+6f/EY0MQB B6BTOoxBO/1cR4AbVMyqtH6IZ5XOqTbiwCutityhjP8yDDlwICuGrUXpK6MD+eLcxWQ+ Bvp1xTAV2h9jxMUH4sSPygUqCRaRhQTeJ4g5q2B/cMRqP32FP8jvMEf6vRlM9iDESwvq TuKWkbuN7ZcKeVAX4wD/x7EnTomiybv/XZ28Vvl+w690Cj01pP3fJPnaRolqk7dPVZdp 4rlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011963; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FQPB7xv25mD+qPlsfdEHWuQM3h7wEXK4ApXoqkMKqPo=; b=H3WUkQa614tWt9bR9zsqSnaGrC21RNBa2a5O+bvFhVEJRHR8pL2j42GoOPkLmDSnMF 3NZxLzoglfliSRc3ZU+/8OvdwXMGVoLpTOkbtYMdHW7pDgxMEfoQsoAuwPkAEoxLn9ja +V0JM12gT5jHxmxnrUhhVziz7tW/NDm1MTeVkM19UiMCMzhCB3I/UAmxNFK+qMNWlE8g K2N1N9X93SKF8Qk9L9PaDPggVAWkUsX8Vwn/n6f6QaZsebo+FMmzuPPpE9nwSQxz7Nlb qqwtfQLfqKZsH9KXVO6cocOqPIzejPNWGWPO+u+Ti8whU8HsaNl57Iph7Vay/a5fGF+T 5Pcw== X-Gm-Message-State: AO0yUKX0Ay3jAYxxV/TvFz8HBeuT22I+G5zC/TgQPb+FF4NCmTA+idGa 8Hnste75uprhkmkDHWHQVaq8/e20Z8KmGw== X-Google-Smtp-Source: AK7set/n/PIfP4jDBd0MU58tcUACBsKvKBhzC42y6Iep6Ca5aQMgAPc5Tg5AkpM9n5/gH/PV4tpOSQ== X-Received: by 2002:a05:600c:3653:b0:3ed:c84c:7efe with SMTP id y19-20020a05600c365300b003edc84c7efemr12387344wmq.7.1680011963002; Tue, 28 Mar 2023 06:59:23 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:22 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 15/17] cocci: apply the "revision.h" part of "the_repository.pending" Date: Tue, 28 Mar 2023 15:58:56 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Apply the part of "the_repository.pending.cocci" pertaining to "revision.h". Signed-off-by: Ævar Arnfjörð Bjarmason --- add-interactive.c | 2 +- builtin/bisect.c | 4 ++-- builtin/stash.c | 6 +++--- builtin/submodule--helper.c | 2 +- contrib/coccinelle/the_repository.cocci | 4 ++++ contrib/coccinelle/the_repository.pending.cocci | 14 -------------- range-diff.c | 2 +- revision.h | 3 --- 8 files changed, 12 insertions(+), 25 deletions(-) delete mode 100644 contrib/coccinelle/the_repository.pending.cocci diff --git a/add-interactive.c b/add-interactive.c index ae25ec50bce..313cfd39d8e 100644 --- a/add-interactive.c +++ b/add-interactive.c @@ -552,7 +552,7 @@ static int get_modified_files(struct repository *r, opt.def = is_initial ? empty_tree_oid_hex() : oid_to_hex(&head_oid); - init_revisions(&rev, NULL); + repo_init_revisions(the_repository, &rev, NULL); setup_revisions(0, NULL, &rev, &opt); rev.diffopt.output_format = DIFF_FORMAT_CALLBACK; diff --git a/builtin/bisect.c b/builtin/bisect.c index 6b01e3c3e8e..c77564053a1 100644 --- a/builtin/bisect.c +++ b/builtin/bisect.c @@ -570,7 +570,7 @@ static int prepare_revs(struct bisect_terms *terms, struct rev_info *revs) * sets up a revision walk. */ reset_revision_walk(); - init_revisions(revs, NULL); + repo_init_revisions(the_repository, revs, NULL); setup_revisions(0, NULL, revs, NULL); for_each_glob_ref_in(add_bisect_ref, bad, "refs/bisect/", &cb); cb.object_flags = UNINTERESTING; @@ -1097,7 +1097,7 @@ static enum bisect_error bisect_skip(struct bisect_terms *terms, int argc, struct rev_info revs; struct commit *commit; - init_revisions(&revs, NULL); + repo_init_revisions(the_repository, &revs, NULL); setup_revisions(2, argv + i - 1, &revs, NULL); if (prepare_revision_walk(&revs)) diff --git a/builtin/stash.c b/builtin/stash.c index b60c82f7af2..5e9fe6b4623 100644 --- a/builtin/stash.c +++ b/builtin/stash.c @@ -902,7 +902,7 @@ static int show_stash(int argc, const char **argv, const char *prefix) init_diff_ui_defaults(); git_config(git_diff_ui_config, NULL); - init_revisions(&rev, prefix); + repo_init_revisions(the_repository, &rev, prefix); argc = parse_options(argc, argv, prefix, options, git_stash_show_usage, PARSE_OPT_KEEP_ARGV0 | PARSE_OPT_KEEP_UNKNOWN_OPT | @@ -1091,7 +1091,7 @@ static int check_changes_tracked_files(const struct pathspec *ps) if (repo_read_index(the_repository) < 0) return -1; - init_revisions(&rev, NULL); + repo_init_revisions(the_repository, &rev, NULL); copy_pathspec(&rev.prune_data, ps); rev.diffopt.flags.quick = 1; @@ -1278,7 +1278,7 @@ static int stash_working_tree(struct stash_info *info, const struct pathspec *ps struct strbuf diff_output = STRBUF_INIT; struct index_state istate = INDEX_STATE_INIT(the_repository); - init_revisions(&rev, NULL); + repo_init_revisions(the_repository, &rev, NULL); copy_pathspec(&rev.prune_data, ps); set_alternate_index_output(stash_index_path.buf); diff --git a/builtin/submodule--helper.c b/builtin/submodule--helper.c index b21857479de..3833c47aa1f 100644 --- a/builtin/submodule--helper.c +++ b/builtin/submodule--helper.c @@ -1110,7 +1110,7 @@ static int compute_summary_module_list(struct object_id *head_oid, strvec_pushv(&diff_args, info->argv); git_config(git_diff_basic_config, NULL); - init_revisions(&rev, info->prefix); + repo_init_revisions(the_repository, &rev, info->prefix); rev.abbrev = 0; precompose_argv_prefix(diff_args.nr, diff_args.v, NULL); setup_revisions(diff_args.nr, diff_args.v, &rev, &opt); diff --git a/contrib/coccinelle/the_repository.cocci b/contrib/coccinelle/the_repository.cocci index 1d1ac7d4fc5..765ad689678 100644 --- a/contrib/coccinelle/the_repository.cocci +++ b/contrib/coccinelle/the_repository.cocci @@ -113,6 +113,10 @@ | - rerere + repo_rerere +// revision.h +| +- init_revisions ++ repo_init_revisions ) ( + the_repository, diff --git a/contrib/coccinelle/the_repository.pending.cocci b/contrib/coccinelle/the_repository.pending.cocci deleted file mode 100644 index 1190a3312bd..00000000000 --- a/contrib/coccinelle/the_repository.pending.cocci +++ /dev/null @@ -1,14 +0,0 @@ -// This file is used for the ongoing refactoring of -// bringing the index or repository struct in all of -// our code base. - -@@ -@@ -( -// revision.h -- init_revisions -+ repo_init_revisions -) - ( -+ the_repository, - ...) diff --git a/range-diff.c b/range-diff.c index 15d0bc35a87..ff5d19f8add 100644 --- a/range-diff.c +++ b/range-diff.c @@ -588,7 +588,7 @@ int is_range_diff_range(const char *arg) int i, positive = 0, negative = 0; struct rev_info revs; - init_revisions(&revs, NULL); + repo_init_revisions(the_repository, &revs, NULL); if (setup_revisions(3, argv, &revs, NULL) == 1) { for (i = 0; i < revs.pending.nr; i++) if (revs.pending.objects[i].item->flags & UNINTERESTING) diff --git a/revision.h b/revision.h index ab71443696d..742700504a7 100644 --- a/revision.h +++ b/revision.h @@ -416,9 +416,6 @@ struct rev_info { void repo_init_revisions(struct repository *r, struct rev_info *revs, const char *prefix); -#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS -#define init_revisions(revs, prefix) repo_init_revisions(the_repository, revs, prefix) -#endif /** * Parse revision information, filling in the `rev_info` structure, and From patchwork Tue Mar 28 13:58:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191122 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id BACBDC76196 for ; Tue, 28 Mar 2023 14:00:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230079AbjC1OAi (ORCPT ); Tue, 28 Mar 2023 10:00:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39596 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232908AbjC1OAE (ORCPT ); Tue, 28 Mar 2023 10:00:04 -0400 Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [IPv6:2a00:1450:4864:20::336]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CFDA6CA2E for ; Tue, 28 Mar 2023 06:59:25 -0700 (PDT) Received: by mail-wm1-x336.google.com with SMTP id l8-20020a05600c1d0800b003ef6708bbf6so5467971wms.5 for ; Tue, 28 Mar 2023 06:59:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011964; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YkbujhribciW0kk9GzD5NeMadZfjgk8Ez4tf4skKY9E=; b=KYOny1QkOYMsYuJ3vg1PQiz0NCzVDBKKN5+7E//fYhncnpt5+ZEZdMP2gOP5OdSrX3 r/ByByMY551WJdwUADhwW7iopHGFr6Yslva5tLXo3ywuM7shz/laNt+VBBsmOVkpVn5T tNgk1v6j7Z4StfKLUb4wch5AKRp+UuCaefrvDnaYWb8I+U7L27B5OmaJX3E1qDAMymsT 6DXbUF4yV4iVhmwx5uP3r0sQ5sL8jMXBwJHanHo0SwWFaLKNWfPb3oiRjiyQjVY9Jfm0 /VaHbZEea1GqyViyvok2y2nErejV8wTumw8mYL/dfJb3NTXyvZEypVYu25UPr+oRNy8K WWHQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011964; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YkbujhribciW0kk9GzD5NeMadZfjgk8Ez4tf4skKY9E=; b=iEYJt18dW3IL/UISNsF5gWKb3FFzLPEvKlD4QvHMN6vxqXfRMHcEDTf8XdYCMGHmNB 8gztYTPmNSXjas3sK7K+ihWEHU6S8JsYyA9iIoBmH7ajhJAqn3DqCmEkaBHQ8X/uRFa0 aFA7P7wXFnXcI/maW5Zk+LN0QdMllNs6w3nqGde4+iO9jGPiHV6h7T/J4vWzSGf9OXAP m7SrMxxCVpKj3OHEkAijKcWVL3595YZfFphqZDaR37p/1DenNKCejn87PDDTHZ0knL0P gR1rg710/pVl1hrykEjrbFCrLwuW0f3Ahx/6xy0h5T/I40fnwtolkYZ3fU6EtiBuGj9m OJ2A== X-Gm-Message-State: AO0yUKW9Sq+jiMB5J3EoFlR+n9SFppS0Bc8WQYU/RKLoSepZ9N02v9Du IrZ3kBWQx+DA4K/lmsczaljEHYSyXpmWLg== X-Google-Smtp-Source: AK7set/nva7cljENDhPSpFmUut+Lwrm/Bt8qOn7riC6djMFbr0xLaMS0S8dqTnGsJHPg/kMVJ+xhUA== X-Received: by 2002:a7b:c3c7:0:b0:3ed:ff92:dd2a with SMTP id t7-20020a7bc3c7000000b003edff92dd2amr12531239wmj.12.1680011963835; Tue, 28 Mar 2023 06:59:23 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:23 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 16/17] post-cocci: adjust comments for recent repo_* migration Date: Tue, 28 Mar 2023 15:58:57 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org In preceding commits we changed many calls to macros that were providing a "the_repository" argument to invoke corresponding repo_*() function instead. Let's follow-up and adjust references to those in comments, which coccinelle didn't (and inherently can't) catch. Signed-off-by: Ævar Arnfjörð Bjarmason --- builtin/branch.c | 2 +- builtin/shortlog.c | 2 +- cache.h | 4 ++-- commit.h | 4 ++-- diff.h | 2 +- object-file.c | 2 +- object-store.h | 4 ++-- pretty.c | 2 +- refs.c | 2 +- sequencer.c | 6 +++--- strbuf.h | 6 +++--- 11 files changed, 18 insertions(+), 18 deletions(-) diff --git a/builtin/branch.c b/builtin/branch.c index bbcfb34b3c6..45910039e6b 100644 --- a/builtin/branch.c +++ b/builtin/branch.c @@ -156,7 +156,7 @@ static int branch_merged(int kind, const char *name, /* * After the safety valve is fully redefined to "check with * upstream, if any, otherwise with HEAD", we should just - * return the result of the in_merge_bases() above without + * return the result of the repo_in_merge_bases() above without * any of the following code, but during the transition period, * a gentle reminder is in order. */ diff --git a/builtin/shortlog.c b/builtin/shortlog.c index 62f91b8b932..f287a6acd03 100644 --- a/builtin/shortlog.c +++ b/builtin/shortlog.c @@ -176,7 +176,7 @@ static void insert_records_from_trailers(struct shortlog *log, return; /* - * Using format_commit_message("%B") would be simpler here, but + * Using repo_format_commit_message("%B") would be simpler here, but * this saves us copying the message. */ commit_buffer = repo_logmsg_reencode(the_repository, commit, NULL, diff --git a/cache.h b/cache.h index 1d05a8e945f..0ede8856562 100644 --- a/cache.h +++ b/cache.h @@ -435,7 +435,7 @@ void validate_cache_entries(const struct index_state *istate); /* * Bulk prefetch all missing cache entries that are not GITLINKs and that match * the given predicate. This function should only be called if - * has_promisor_remote() returns true. + * repo_has_promisor_remote() returns true. */ typedef int (*must_prefetch_predicate)(const struct cache_entry *); void prefetch_cache_entries(const struct index_state *istate, @@ -1093,7 +1093,7 @@ void check_repository_format(struct repository_format *fmt); * terminated. * * The non-`_r` version returns a static buffer which remains valid until 4 - * more calls to find_unique_abbrev are made. + * more calls to repo_find_unique_abbrev are made. * * The `_r` variant writes to a buffer supplied by the caller, which must be at * least `GIT_MAX_HEXSZ + 1` bytes. The return value is the number of bytes diff --git a/commit.h b/commit.h index d87d5cd2a09..69b2f376e9d 100644 --- a/commit.h +++ b/commit.h @@ -130,7 +130,7 @@ const void *get_cached_commit_buffer(struct repository *, const struct commit *, /* * Get the commit's object contents, either from cache or by reading the object * from disk. The resulting memory should not be modified, and must be given - * to unuse_commit_buffer when the caller is done. + * to repo_unuse_commit_buffer when the caller is done. */ const void *repo_get_commit_buffer(struct repository *r, const struct commit *, @@ -139,7 +139,7 @@ const void *repo_get_commit_buffer(struct repository *r, /* * Tell the commit subsystem that we are done with a particular commit buffer. * The commit and buffer should be the input and return value, respectively, - * from an earlier call to get_commit_buffer. The buffer may or may not be + * from an earlier call to repo_get_commit_buffer. The buffer may or may not be * freed by this call; callers should not access the memory afterwards. */ void repo_unuse_commit_buffer(struct repository *r, diff --git a/diff.h b/diff.h index c759bedc269..6a0737b9c34 100644 --- a/diff.h +++ b/diff.h @@ -615,7 +615,7 @@ void diff_warn_rename_limit(const char *varname, int needed, int degraded_cc); #define DIFF_STATUS_FILTER_BROKEN 'B' /* - * This is different from find_unique_abbrev() in that + * This is different from repo_find_unique_abbrev() in that * it stuffs the result with dots for alignment. */ const char *diff_aligned_abbrev(const struct object_id *sha1, int); diff --git a/object-file.c b/object-file.c index 5944f51a3e0..bd9741c7f36 100644 --- a/object-file.c +++ b/object-file.c @@ -269,7 +269,7 @@ int hash_algo_by_length(int len) /* * This is meant to hold a *small* number of objects that you would - * want read_object_file() to be able to return, but yet you do not want + * want repo_read_object_file() to be able to return, but yet you do not want * to write them into the object store (e.g. a browse-only * application). */ diff --git a/object-store.h b/object-store.h index 62a683af4d6..f9d225783ae 100644 --- a/object-store.h +++ b/object-store.h @@ -216,7 +216,7 @@ struct raw_object_store { /* * A fast, rough count of the number of objects in the repository. * These two fields are not meant for direct access. Use - * approximate_object_count() instead. + * repo_approximate_object_count() instead. */ unsigned long approximate_object_count; unsigned approximate_object_count_valid : 1; @@ -406,7 +406,7 @@ void assert_oid_type(const struct object_id *oid, enum object_type expect); /* * Enabling the object read lock allows multiple threads to safely call the - * following functions in parallel: repo_read_object_file(), read_object_file(), + * following functions in parallel: repo_read_object_file(), * read_object_with_reference(), oid_object_info() and oid_object_info_extended(). * * obj_read_lock() and obj_read_unlock() may also be used to protect other diff --git a/pretty.c b/pretty.c index 0ce6ab7e196..494932da20d 100644 --- a/pretty.c +++ b/pretty.c @@ -721,7 +721,7 @@ const char *repo_logmsg_reencode(struct repository *r, * Otherwise, we still want to munge the encoding header in the * result, which will be done by modifying the buffer. If we * are using a fresh copy, we can reuse it. But if we are using - * the cached copy from get_commit_buffer, we need to duplicate it + * the cached copy from repo_get_commit_buffer, we need to duplicate it * to avoid munging the cached copy. */ if (msg == get_cached_commit_buffer(r, commit, NULL)) diff --git a/refs.c b/refs.c index 53240bcc07b..1e1c76d1eca 100644 --- a/refs.c +++ b/refs.c @@ -1823,7 +1823,7 @@ const char *refs_resolve_ref_unsafe(struct ref_store *refs, return NULL; /* - * dwim_ref() uses REF_ISBROKEN to distinguish between + * repo_dwim_ref() uses REF_ISBROKEN to distinguish between * missing refs and refs that were present but invalid, * to complain about the latter to stderr. * diff --git a/sequencer.c b/sequencer.c index d0ad37700fd..84b07b818f0 100644 --- a/sequencer.c +++ b/sequencer.c @@ -766,9 +766,9 @@ static int is_index_unchanged(struct repository *r) /* * If head_commit is NULL, check_commit, called from * lookup_commit, would have indicated that head_commit is not - * a commit object already. parse_commit() will return failure + * a commit object already. repo_parse_commit() will return failure * without further complaints in such a case. Otherwise, if - * the commit is invalid, parse_commit() will complain. So + * the commit is invalid, repo_parse_commit() will complain. So * there is nothing for us to say here. Just return failure. */ if (repo_parse_commit(the_repository, head_commit)) @@ -5368,7 +5368,7 @@ static const char *label_oid(struct object_id *oid, const char *label, * For "uninteresting" commits, i.e. commits that are not to be * rebased, and which can therefore not be labeled, we use a unique * abbreviation of the commit name. This is slightly more complicated - * than calling find_unique_abbrev() because we also need to make + * than calling repo_find_unique_abbrev() because we also need to make * sure that the abbreviation does not conflict with any other * label. * diff --git a/strbuf.h b/strbuf.h index f6dbb9681ee..b980f9edc6d 100644 --- a/strbuf.h +++ b/strbuf.h @@ -631,7 +631,7 @@ void strbuf_add_separated_string_list(struct strbuf *str, void strbuf_list_free(struct strbuf **list); /** - * Add the abbreviation, as generated by find_unique_abbrev, of `sha1` to + * Add the abbreviation, as generated by repo_find_unique_abbrev(), of `sha1` to * the strbuf `sb`. */ struct repository; @@ -706,14 +706,14 @@ static inline void strbuf_complete_line(struct strbuf *sb) /* * Copy "name" to "sb", expanding any special @-marks as handled by - * interpret_branch_name(). The result is a non-qualified branch name + * repo_interpret_branch_name(). The result is a non-qualified branch name * (so "foo" or "origin/master" instead of "refs/heads/foo" or * "refs/remotes/origin/master"). * * Note that the resulting name may not be a syntactically valid refname. * * If "allowed" is non-zero, restrict the set of allowed expansions. See - * interpret_branch_name() for details. + * repo_interpret_branch_name() for details. */ void strbuf_branchname(struct strbuf *sb, const char *name, unsigned allowed); From patchwork Tue Mar 28 13:58:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 13191123 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B78DFC76196 for ; Tue, 28 Mar 2023 14:00:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233180AbjC1OAq (ORCPT ); Tue, 28 Mar 2023 10:00:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40928 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232933AbjC1OAH (ORCPT ); Tue, 28 Mar 2023 10:00:07 -0400 Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com [IPv6:2a00:1450:4864:20::42d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 65AFEB75A for ; Tue, 28 Mar 2023 06:59:27 -0700 (PDT) Received: by mail-wr1-x42d.google.com with SMTP id h17so12306976wrt.8 for ; Tue, 28 Mar 2023 06:59:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680011965; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Fb+6PDOKlXFIvTi9PU4ItXKH5t6VF/sidPgBtq+PeVc=; b=Pymyd+2Ng2RZJjWFvRZURs1qkJeOi3enjZTt2miom28L7SCsN9fa4d2Gb26noxSbRg Ks5ezUXMGs7LhLAJki5wdOJEcNXBDkJrCZU8S38GVCRpTpIVUhIu0GOyForgmlAE6zm6 M1eyjpHfurk2VnZcs3UaJysnt4SJLVO4IplILQnmpe+tBgiq/01EDKvEPD/eir7EMqs2 piUR5ft53B8xnr92JlWrhGiiU/k3ftKlr1E5Z0hbJRT0pzlpxAaG8RClAQ+cgr91doAn hqK1O4YDE70ZIbaz/Q6FCJTlPiI3SUpPB17EurAuRRReWBc+PW/feKyUOIhshSOcNSlj 50mA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680011965; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Fb+6PDOKlXFIvTi9PU4ItXKH5t6VF/sidPgBtq+PeVc=; b=Ybc5Tn+Qxs4cFvT3niYOP0ofupe6F+DeAbyjDNclhM2FEUxAsxkm2QlyewwmxepSWj Wgi5/xwplAFGL5S/w63jxgRZdKfW63pJdh1PqrI32yTJvUpwbN/HXYV1lO9OhW1+mK90 rmBkUXy/FOqmp0FlTDb5vPD50UvdLfKQtjosLXUDD/IZs5+0rtknIMAnhga8o79R2AhK tFH0A5UnR1Jj3uEAZAx6arWBg2Z3n/Cn093QQXzoVEiUh7hNNTJ6wyu6LTJEJGgD3vUd bCqfC6SeZJ8g8KEXd+VUDyMJx1TlX2UnHqjI4xQDR0HdFksoXM7cycDjqQUx+bOt6osT /Ijg== X-Gm-Message-State: AAQBX9cNeoIYbI4umB33AIM1KJBHdsSWcVT1//Wn6yNt1usIeg7cTec6 LE1L2tskbuOYHMI0+o/VmgnLu6SFDHYFqQ== X-Google-Smtp-Source: AKy350bo7YZE1rC+k3SPSElFsp+liTwuFtk6gmmVI3+0fZiGk4hgnNi4MjzI8rq67dEhfechY9d7Bw== X-Received: by 2002:a5d:590d:0:b0:2cf:ecd0:d1ab with SMTP id v13-20020a5d590d000000b002cfecd0d1abmr11433707wrd.49.1680011965012; Tue, 28 Mar 2023 06:59:25 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id q7-20020a05600c46c700b003ede2c59a54sm6252268wmo.37.2023.03.28.06.59.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Mar 2023 06:59:24 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Glen Choo , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v2 17/17] libs: use "struct repository *" argument, not "the_repository" Date: Tue, 28 Mar 2023 15:58:58 +0200 Message-Id: X-Mailer: git-send-email 2.40.0.rc1.1034.g5867a1b10c5 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org As can easily be seen from grepping in our sources, we had these uses of "the_repository" in various library code in cases where the function in question was already getting a "struct repository *" argument. Let's use that argument instead. Out of these changes only the changes to "cache-tree.c", "commit-reach.c", "shallow.c" and "upload-pack.c" would have cleanly applied before the migration away from the "repo_*()" wrapper macros in the preceding commits. The rest aren't new, as we'd previously implicitly refer to "the_repository", but it's now more obvious that we were doing the wrong thing all along, and should have used the parameter instead. The change to change "get_index_format_default(the_repository)" in "read-cache.c" to use the "r" variable instead should arguably have been part of [1], or in the subsequent cleanup in [2]. Let's do it here, as can be seen from the initial code in [3] it's not important that we use "the_repository" there, but would prefer to always use the current repository. This change excludes the "the_repository" use in "upload-pack.c"'s upload_pack_advertise(), as the in-flight [4] makes that change. 1. ee1f0c242ef (read-cache: add index.skipHash config option, 2023-01-06) 2. 6269f8eaad0 (treewide: always have a valid "index_state.repo" member, 2023-01-17) 3. 7211b9e7534 (repo-settings: consolidate some config settings, 2019-08-13) 4. Signed-off-by: Ævar Arnfjörð Bjarmason --- add-interactive.c | 2 +- branch.c | 8 ++-- builtin/replace.c | 2 +- cache-tree.c | 4 +- combine-diff.c | 2 +- commit-graph.c | 2 +- commit-reach.c | 2 +- merge-recursive.c | 2 +- notes-cache.c | 2 +- notes-utils.c | 2 +- object-name.c | 8 ++-- read-cache.c | 4 +- reset.c | 2 +- sequencer.c | 102 ++++++++++++++++++++++------------------------ shallow.c | 2 +- tree.c | 2 +- wt-status.c | 10 ++--- 17 files changed, 76 insertions(+), 82 deletions(-) diff --git a/add-interactive.c b/add-interactive.c index 313cfd39d8e..14ccea150a0 100644 --- a/add-interactive.c +++ b/add-interactive.c @@ -552,7 +552,7 @@ static int get_modified_files(struct repository *r, opt.def = is_initial ? empty_tree_oid_hex() : oid_to_hex(&head_oid); - repo_init_revisions(the_repository, &rev, NULL); + repo_init_revisions(r, &rev, NULL); setup_revisions(0, NULL, &rev, &opt); rev.diffopt.output_format = DIFF_FORMAT_CALLBACK; diff --git a/branch.c b/branch.c index 179353e7653..6fa61d1251d 100644 --- a/branch.c +++ b/branch.c @@ -532,7 +532,7 @@ static void dwim_branch_start(struct repository *r, const char *start_name, explicit_tracking = 1; real_ref = NULL; - if (repo_get_oid_mb(the_repository, start_name, &oid)) { + if (repo_get_oid_mb(r, start_name, &oid)) { if (explicit_tracking) { int code = die_message(_(upstream_missing), start_name); advise_if_enabled(ADVICE_SET_UPSTREAM_FAILURE, @@ -542,8 +542,8 @@ static void dwim_branch_start(struct repository *r, const char *start_name, die(_("not a valid object name: '%s'"), start_name); } - switch (repo_dwim_ref(the_repository, start_name, strlen(start_name), - &oid, &real_ref, 0)) { + switch (repo_dwim_ref(r, start_name, strlen(start_name), &oid, + &real_ref, 0)) { case 0: /* Not branching from any existing branch */ if (explicit_tracking) @@ -774,7 +774,7 @@ void create_branches_recursively(struct repository *r, const char *name, name); } - create_branch(the_repository, name, start_commitish, force, 0, reflog, quiet, + create_branch(r, name, start_commitish, force, 0, reflog, quiet, BRANCH_TRACK_NEVER, dry_run); if (dry_run) return; diff --git a/builtin/replace.c b/builtin/replace.c index ef70f2d1005..44ec1709676 100644 --- a/builtin/replace.c +++ b/builtin/replace.c @@ -56,7 +56,7 @@ static int show_reference(struct repository *r, const char *refname, struct object_id object; enum object_type obj_type, repl_type; - if (repo_get_oid(the_repository, refname, &object)) + if (repo_get_oid(r, refname, &object)) return error(_("failed to resolve '%s' as a valid ref"), refname); obj_type = oid_object_info(r, &object, NULL); diff --git a/cache-tree.c b/cache-tree.c index 12206eeaa3c..29ea7bd3646 100644 --- a/cache-tree.c +++ b/cache-tree.c @@ -816,14 +816,14 @@ void prime_cache_tree(struct repository *r, { struct strbuf tree_path = STRBUF_INIT; - trace2_region_enter("cache-tree", "prime_cache_tree", the_repository); + trace2_region_enter("cache-tree", "prime_cache_tree", r); cache_tree_free(&istate->cache_tree); istate->cache_tree = cache_tree(); prime_cache_tree_rec(r, istate->cache_tree, tree, &tree_path); strbuf_release(&tree_path); istate->cache_changed |= CACHE_TREE_CHANGED; - trace2_region_leave("cache-tree", "prime_cache_tree", the_repository); + trace2_region_leave("cache-tree", "prime_cache_tree", r); } /* diff --git a/combine-diff.c b/combine-diff.c index 6077d4ec498..20953963946 100644 --- a/combine-diff.c +++ b/combine-diff.c @@ -333,7 +333,7 @@ static char *grab_blob(struct repository *r, *size = fill_textconv(r, textconv, df, &blob); free_filespec(df); } else { - blob = repo_read_object_file(the_repository, oid, &type, size); + blob = repo_read_object_file(r, oid, &type, size); if (type != OBJ_BLOB) die("object '%s' is not a blob!", oid_to_hex(oid)); } diff --git a/commit-graph.c b/commit-graph.c index 6403567dfee..a394cee4f10 100644 --- a/commit-graph.c +++ b/commit-graph.c @@ -2550,7 +2550,7 @@ int verify_commit_graph(struct repository *r, struct commit_graph *g, int flags) graph_commit = lookup_commit(r, &cur_oid); odb_commit = (struct commit *)create_object(r, &cur_oid, alloc_commit_node(r)); - if (repo_parse_commit_internal(the_repository, odb_commit, 0, 0)) { + if (repo_parse_commit_internal(r, odb_commit, 0, 0)) { graph_report(_("failed to parse commit %s from object database for commit-graph"), oid_to_hex(&cur_oid)); continue; diff --git a/commit-reach.c b/commit-reach.c index b9eb0952d7b..5957a8e950f 100644 --- a/commit-reach.c +++ b/commit-reach.c @@ -450,7 +450,7 @@ int repo_is_descendant_of(struct repository *r, if (!with_commit) return 1; - if (generation_numbers_enabled(the_repository)) { + if (generation_numbers_enabled(r)) { struct commit_list *from_list = NULL; int result; commit_list_insert(commit, &from_list); diff --git a/merge-recursive.c b/merge-recursive.c index 9c80b7aa3a7..e3244721462 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -3798,7 +3798,7 @@ static struct commit *get_ref(struct repository *repo, return make_virtual_commit(repo, (struct tree*)object, name); if (object->type != OBJ_COMMIT) return NULL; - if (repo_parse_commit(the_repository, (struct commit *)object)) + if (repo_parse_commit(repo, (struct commit *)object)) return NULL; return (struct commit *)object; } diff --git a/notes-cache.c b/notes-cache.c index e5e9092d367..1a6e214ea79 100644 --- a/notes-cache.c +++ b/notes-cache.c @@ -23,7 +23,7 @@ static int notes_cache_match_validity(struct repository *r, return 0; memset(&pretty_ctx, 0, sizeof(pretty_ctx)); - repo_format_commit_message(the_repository, commit, "%s", &msg, + repo_format_commit_message(r, commit, "%s", &msg, &pretty_ctx); strbuf_trim(&msg); diff --git a/notes-utils.c b/notes-utils.c index 0550cfded86..4be0aaa6de9 100644 --- a/notes-utils.c +++ b/notes-utils.c @@ -23,7 +23,7 @@ void create_notes_commit(struct repository *r, struct object_id parent_oid; if (!read_ref(t->ref, &parent_oid)) { struct commit *parent = lookup_commit(r, &parent_oid); - if (repo_parse_commit(the_repository, parent)) + if (repo_parse_commit(r, parent)) die("Failed to find/parse commit %s", t->ref); commit_list_insert(parent, &parents); } diff --git a/object-name.c b/object-name.c index c7cef682f20..d63141bd043 100644 --- a/object-name.c +++ b/object-name.c @@ -1039,7 +1039,7 @@ static enum get_oid_result get_parent(struct repository *r, if (ret) return ret; commit = lookup_commit_reference(r, &oid); - if (repo_parse_commit(the_repository, commit)) + if (repo_parse_commit(r, commit)) return MISSING_OBJECT; if (!idx) { oidcpy(result, &commit->object.oid); @@ -1073,7 +1073,7 @@ static enum get_oid_result get_nth_ancestor(struct repository *r, return MISSING_OBJECT; while (generation--) { - if (repo_parse_commit(the_repository, commit) || !commit->parents) + if (repo_parse_commit(r, commit) || !commit->parents) return MISSING_OBJECT; commit = commit->parents->item; } @@ -1364,10 +1364,10 @@ static int get_oid_oneline(struct repository *r, commit = pop_most_recent_commit(&list, ONELINE_SEEN); if (!parse_object(r, &commit->object.oid)) continue; - buf = repo_get_commit_buffer(the_repository, commit, NULL); + buf = repo_get_commit_buffer(r, commit, NULL); p = strstr(buf, "\n\n"); matches = negative ^ (p && !regexec(®ex, p + 2, 0, NULL, 0)); - repo_unuse_commit_buffer(the_repository, commit, buf); + repo_unuse_commit_buffer(r, commit, buf); if (matches) { oidcpy(oid, &commit->object.oid); diff --git a/read-cache.c b/read-cache.c index 4518a40ac06..0a336934a76 100644 --- a/read-cache.c +++ b/read-cache.c @@ -2630,7 +2630,7 @@ int repo_index_has_changes(struct repository *repo, if (tree) cmp = tree->object.oid; - if (tree || !repo_get_oid_tree(the_repository, "HEAD", &cmp)) { + if (tree || !repo_get_oid_tree(repo, "HEAD", &cmp)) { struct diff_options opt; repo_diff_setup(repo, &opt); @@ -2949,7 +2949,7 @@ static int do_write_index(struct index_state *istate, struct tempfile *tempfile, } if (!istate->version) - istate->version = get_index_format_default(the_repository); + istate->version = get_index_format_default(r); /* demote version 3 to version 2 when the latter suffices */ if (istate->version == 3 || istate->version == 2) diff --git a/reset.c b/reset.c index 8c471e22d99..b1234807188 100644 --- a/reset.c +++ b/reset.c @@ -107,7 +107,7 @@ int reset_head(struct repository *r, const struct reset_head_opts *opts) goto leave_reset_head; } - if (!repo_get_oid(the_repository, "HEAD", &head_oid)) { + if (!repo_get_oid(r, "HEAD", &head_oid)) { head = &head_oid; } else if (!oid || !reset_hard) { ret = error(_("could not determine HEAD revision")); diff --git a/sequencer.c b/sequencer.c index 84b07b818f0..c23f3e5fa67 100644 --- a/sequencer.c +++ b/sequencer.c @@ -692,8 +692,8 @@ static int do_recursive_merge(struct repository *r, o.show_rename_progress = 1; head_tree = parse_tree_indirect(head); - next_tree = next ? repo_get_commit_tree(the_repository, next) : empty_tree(r); - base_tree = base ? repo_get_commit_tree(the_repository, base) : empty_tree(r); + next_tree = next ? repo_get_commit_tree(r, next) : empty_tree(r); + base_tree = base ? repo_get_commit_tree(r, base) : empty_tree(r); for (i = 0; i < opts->xopts_nr; i++) parse_merge_opt(&o, opts->xopts[i]); @@ -771,7 +771,7 @@ static int is_index_unchanged(struct repository *r) * the commit is invalid, repo_parse_commit() will complain. So * there is nothing for us to say here. Just return failure. */ - if (repo_parse_commit(the_repository, head_commit)) + if (repo_parse_commit(r, head_commit)) return -1; if (!(cache_tree_oid = get_cache_tree_oid(istate))) @@ -1336,15 +1336,15 @@ void print_commit_summary(struct repository *r, commit = lookup_commit(r, oid); if (!commit) die(_("couldn't look up newly created commit")); - if (repo_parse_commit(the_repository, commit)) + if (repo_parse_commit(r, commit)) die(_("could not parse newly created commit")); strbuf_addstr(&format, "format:%h] %s"); - repo_format_commit_message(the_repository, commit, "%an <%ae>", - &author_ident, &pctx); - repo_format_commit_message(the_repository, commit, "%cn <%ce>", - &committer_ident, &pctx); + repo_format_commit_message(r, commit, "%an <%ae>", &author_ident, + &pctx); + repo_format_commit_message(r, commit, "%cn <%ce>", &committer_ident, + &pctx); if (strbuf_cmp(&author_ident, &committer_ident)) { strbuf_addstr(&format, "\n Author: "); strbuf_addbuf_percentquote(&format, &author_ident); @@ -1352,8 +1352,7 @@ void print_commit_summary(struct repository *r, if (flags & SUMMARY_SHOW_AUTHOR_DATE) { struct strbuf date = STRBUF_INIT; - repo_format_commit_message(the_repository, commit, "%ad", - &date, &pctx); + repo_format_commit_message(r, commit, "%ad", &date, &pctx); strbuf_addstr(&format, "\n Date: "); strbuf_addbuf_percentquote(&format, &date); strbuf_release(&date); @@ -1383,7 +1382,7 @@ void print_commit_summary(struct repository *r, rev.diffopt.detect_rename = DIFF_DETECT_RENAME; diff_setup_done(&rev.diffopt); - refs = get_main_ref_store(the_repository); + refs = get_main_ref_store(r); head = refs_resolve_ref_unsafe(refs, "HEAD", 0, NULL, NULL); if (!head) die(_("unable to resolve HEAD after creating commit")); @@ -1409,7 +1408,7 @@ static int parse_head(struct repository *r, struct commit **head) struct commit *current_head; struct object_id oid; - if (repo_get_oid(the_repository, "HEAD", &oid)) { + if (repo_get_oid(r, "HEAD", &oid)) { current_head = NULL; } else { current_head = lookup_commit_reference(r, &oid); @@ -1419,7 +1418,7 @@ static int parse_head(struct repository *r, struct commit **head) warning(_("HEAD %s is not a commit!"), oid_to_hex(&oid)); } - if (repo_parse_commit(the_repository, current_head)) + if (repo_parse_commit(r, current_head)) return error(_("could not parse HEAD commit")); } *head = current_head; @@ -1462,9 +1461,8 @@ static int try_to_commit(struct repository *r, if (flags & AMEND_MSG) { const char *exclude_gpgsig[] = { "gpgsig", "gpgsig-sha256", NULL }; const char *out_enc = get_commit_output_encoding(); - const char *message = repo_logmsg_reencode(the_repository, - current_head, NULL, - out_enc); + const char *message = repo_logmsg_reencode(r, current_head, + NULL, out_enc); if (!msg) { const char *orig_message = NULL; @@ -1475,7 +1473,7 @@ static int try_to_commit(struct repository *r, hook_commit = "HEAD"; } author = amend_author = get_author(message); - repo_unuse_commit_buffer(the_repository, current_head, + repo_unuse_commit_buffer(r, current_head, message); if (!author) { res = error(_("unable to parse commit author")); @@ -2002,18 +2000,18 @@ static int update_squash_messages(struct repository *r, struct commit *head_commit; const char *head_message, *body; - if (repo_get_oid(the_repository, "HEAD", &head)) + if (repo_get_oid(r, "HEAD", &head)) return error(_("need a HEAD to fixup")); if (!(head_commit = lookup_commit_reference(r, &head))) return error(_("could not read HEAD")); - if (!(head_message = repo_logmsg_reencode(the_repository, head_commit, NULL, encoding))) + if (!(head_message = repo_logmsg_reencode(r, head_commit, NULL, + encoding))) return error(_("could not read HEAD's commit message")); find_commit_subject(head_message, &body); if (command == TODO_FIXUP && !flag && write_message(body, strlen(body), rebase_path_fixup_msg(), 0) < 0) { - repo_unuse_commit_buffer(the_repository, head_commit, - head_message); + repo_unuse_commit_buffer(r, head_commit, head_message); return error(_("cannot write '%s'"), rebase_path_fixup_msg()); } strbuf_addf(&buf, "%c ", comment_line_char); @@ -2028,11 +2026,10 @@ static int update_squash_messages(struct repository *r, else strbuf_addstr(&buf, body); - repo_unuse_commit_buffer(the_repository, head_commit, - head_message); + repo_unuse_commit_buffer(r, head_commit, head_message); } - if (!(message = repo_logmsg_reencode(the_repository, commit, NULL, encoding))) + if (!(message = repo_logmsg_reencode(r, commit, NULL, encoding))) return error(_("could not read commit message of %s"), oid_to_hex(&commit->object.oid)); find_commit_subject(message, &body); @@ -2047,7 +2044,7 @@ static int update_squash_messages(struct repository *r, strbuf_add_commented_lines(&buf, body, strlen(body)); } else return error(_("unknown command: %d"), command); - repo_unuse_commit_buffer(the_repository, commit, message); + repo_unuse_commit_buffer(r, commit, message); if (!res) res = write_message(buf.buf, buf.len, rebase_path_squash_msg(), @@ -2160,7 +2157,7 @@ static int do_pick_commit(struct repository *r, if (write_index_as_tree(&head, r->index, r->index_file, 0, NULL)) return error(_("your index file is unmerged.")); } else { - unborn = repo_get_oid(the_repository, "HEAD", &head); + unborn = repo_get_oid(r, "HEAD", &head); /* Do we want to generate a root commit? */ if (is_pick_or_similar(command) && opts->have_squash_onto && oideq(&head, &opts->squash_onto)) { @@ -2222,7 +2219,7 @@ static int do_pick_commit(struct repository *r, msg_file = NULL; goto fast_forward_edit; } - if (parent && repo_parse_commit(the_repository, parent) < 0) + if (parent && repo_parse_commit(r, parent) < 0) /* TRANSLATORS: The first %s will be a "todo" command like "revert" or "pick", the second %s a SHA1. */ return error(_("%s: cannot parse parent commit %s"), @@ -2614,7 +2611,7 @@ static int parse_insn_line(struct repository *r, struct todo_item *item, end_of_object_name = (char *) bol + strcspn(bol, " \t\n"); saved = *end_of_object_name; *end_of_object_name = '\0'; - status = repo_get_oid(the_repository, bol, &commit_oid); + status = repo_get_oid(r, bol, &commit_oid); if (status < 0) error(_("could not parse '%s'"), bol); /* return later */ *end_of_object_name = saved; @@ -3534,12 +3531,12 @@ static int make_patch(struct repository *r, strbuf_addf(&buf, "%s/message", get_dir(opts)); if (!file_exists(buf.buf)) { const char *encoding = get_commit_output_encoding(); - const char *commit_buffer = repo_logmsg_reencode(the_repository, + const char *commit_buffer = repo_logmsg_reencode(r, commit, NULL, encoding); find_commit_subject(commit_buffer, &subject); res |= write_message(subject, strlen(subject), buf.buf, 1); - repo_unuse_commit_buffer(the_repository, commit, + repo_unuse_commit_buffer(r, commit, commit_buffer); } strbuf_release(&buf); @@ -3719,7 +3716,7 @@ static int do_label(struct repository *r, const char *name, int len) if (!transaction) { error("%s", err.buf); ret = -1; - } else if (repo_get_oid(the_repository, "HEAD", &head_oid)) { + } else if (repo_get_oid(r, "HEAD", &head_oid)) { error(_("could not read HEAD")); ret = -1; } else if (ref_transaction_update(transaction, ref_name.buf, &head_oid, @@ -4007,8 +4004,7 @@ static int do_merge(struct repository *r, if (commit) { const char *encoding = get_commit_output_encoding(); - const char *message = repo_logmsg_reencode(the_repository, - commit, NULL, + const char *message = repo_logmsg_reencode(r, commit, NULL, encoding); const char *body; int len; @@ -4022,7 +4018,7 @@ static int do_merge(struct repository *r, find_commit_subject(message, &body); len = strlen(body); ret = write_message(body, len, git_path_merge_msg(r), 0); - repo_unuse_commit_buffer(the_repository, commit, message); + repo_unuse_commit_buffer(r, commit, message); if (ret) { error_errno(_("could not write '%s'"), git_path_merge_msg(r)); @@ -4122,8 +4118,7 @@ static int do_merge(struct repository *r, } merge_commit = to_merge->item; - bases = repo_get_merge_bases(the_repository, head_commit, - merge_commit); + bases = repo_get_merge_bases(r, head_commit, merge_commit); if (bases && oideq(&merge_commit->object.oid, &bases->item->object.oid)) { ret = 0; @@ -4478,7 +4473,7 @@ void create_autostash(struct repository *r, const char *path) if (capture_command(&stash, &buf, GIT_MAX_HEXSZ)) die(_("Cannot autostash")); strbuf_trim_trailing_newline(&buf); - if (repo_get_oid(the_repository, buf.buf, &oid)) + if (repo_get_oid(r, buf.buf, &oid)) die(_("Unexpected stash response: '%s'"), buf.buf); strbuf_reset(&buf); @@ -4603,9 +4598,9 @@ static int stopped_at_head(struct repository *r) struct commit *commit; struct commit_message message; - if (repo_get_oid(the_repository, "HEAD", &head) || + if (repo_get_oid(r, "HEAD", &head) || !(commit = lookup_commit(r, &head)) || - repo_parse_commit(the_repository, commit) || get_message(commit, &message)) + repo_parse_commit(r, commit) || get_message(commit, &message)) fprintf(stderr, _("Stopped at HEAD\n")); else { fprintf(stderr, _("Stopped at %s\n"), message.label); @@ -4753,7 +4748,7 @@ static int pick_commits(struct repository *r, * otherwise we do not. */ if (item->command == TODO_REWORD && - !repo_get_oid(the_repository, "HEAD", &oid) && + !repo_get_oid(r, "HEAD", &oid) && (oideq(&item->commit->object.oid, &oid) || (opts->have_squash_onto && oideq(&opts->squash_onto, &oid)))) @@ -4842,7 +4837,7 @@ static int pick_commits(struct repository *r, struct object_id head, orig; int res; - if (repo_get_oid(the_repository, "HEAD", &head)) { + if (repo_get_oid(r, "HEAD", &head)) { res = error(_("cannot read HEAD")); cleanup_head_ref: strbuf_release(&head_ref); @@ -4889,8 +4884,8 @@ static int pick_commits(struct repository *r, log_tree_opt.disable_stdin = 1; if (read_oneliner(&buf, rebase_path_orig_head(), 0) && - !repo_get_oid(the_repository, buf.buf, &orig) && - !repo_get_oid(the_repository, "HEAD", &head)) { + !repo_get_oid(r, buf.buf, &orig) && + !repo_get_oid(r, "HEAD", &head)) { diff_tree_oid(&orig, &head, "", &log_tree_opt.diffopt); log_tree_diff_flush(&log_tree_opt); @@ -4982,7 +4977,7 @@ static int commit_staged_changes(struct repository *r, struct strbuf rev = STRBUF_INIT; struct object_id head, to_amend; - if (repo_get_oid(the_repository, "HEAD", &head)) + if (repo_get_oid(r, "HEAD", &head)) return error(_("cannot amend non-existing commit")); if (!read_oneliner(&rev, rebase_path_amend(), 0)) return error(_("invalid file: '%s'"), rebase_path_amend()); @@ -5062,14 +5057,13 @@ static int commit_staged_changes(struct repository *r, const char *encoding = get_commit_output_encoding(); if (parse_head(r, &commit) || - !(p = repo_logmsg_reencode(the_repository, commit, NULL, encoding)) || + !(p = repo_logmsg_reencode(r, commit, NULL, encoding)) || write_message(p, strlen(p), path, 0)) { - repo_unuse_commit_buffer(the_repository, - commit, p); + repo_unuse_commit_buffer(r, commit, p); return error(_("could not write file: " "'%s'"), path); } - repo_unuse_commit_buffer(the_repository, + repo_unuse_commit_buffer(r, commit, p); } } @@ -5209,7 +5203,7 @@ int sequencer_pick_revisions(struct repository *r, if (!strlen(name)) continue; - if (!repo_get_oid(the_repository, name, &oid)) { + if (!repo_get_oid(r, name, &oid)) { if (!lookup_commit_reference_gently(r, &oid, 1)) { enum object_type type = oid_object_info(r, &oid, @@ -5252,7 +5246,7 @@ int sequencer_pick_revisions(struct repository *r, if (walk_revs_populate_todo(&todo_list, opts) || create_seq_dir(r) < 0) return -1; - if (repo_get_oid(the_repository, "HEAD", &oid) && (opts->action == REPLAY_REVERT)) + if (repo_get_oid(r, "HEAD", &oid) && (opts->action == REPLAY_REVERT)) return error(_("can't revert as initial commit")); if (save_head(oid_to_hex(&oid))) return -1; @@ -5947,7 +5941,7 @@ static int skip_unnecessary_picks(struct repository *r, continue; if (item->command != TODO_PICK) break; - if (repo_parse_commit(the_repository, item->commit)) { + if (repo_parse_commit(r, item->commit)) { return error(_("could not parse commit '%s'"), oid_to_hex(&item->commit->object.oid)); } @@ -6118,7 +6112,7 @@ int complete_action(struct repository *r, struct replay_opts *opts, unsigned fla struct object_id oid = onto->object.oid; int res; - repo_find_unique_abbrev_r(the_repository, shortonto, &oid, + repo_find_unique_abbrev_r(r, shortonto, &oid, DEFAULT_ABBREV); if (buf->len == 0) { @@ -6398,8 +6392,8 @@ int sequencer_determine_whence(struct repository *r, enum commit_whence *whence) if (file_exists(git_path_seq_dir())) *whence = FROM_CHERRY_PICK_MULTI; if (file_exists(rebase_path()) && - !repo_get_oid(the_repository, "REBASE_HEAD", &rebase_head) && - !repo_get_oid(the_repository, "CHERRY_PICK_HEAD", &cherry_pick_head) && + !repo_get_oid(r, "REBASE_HEAD", &rebase_head) && + !repo_get_oid(r, "CHERRY_PICK_HEAD", &cherry_pick_head) && oideq(&rebase_head, &cherry_pick_head)) *whence = FROM_REBASE_PICK; else diff --git a/shallow.c b/shallow.c index ce21f66e5e1..4f34861423f 100644 --- a/shallow.c +++ b/shallow.c @@ -32,7 +32,7 @@ int register_shallow(struct repository *r, const struct object_id *oid) { struct commit_graft *graft = xmalloc(sizeof(struct commit_graft)); - struct commit *commit = lookup_commit(the_repository, oid); + struct commit *commit = lookup_commit(r, oid); oidcpy(&graft->oid, oid); graft->nr_parent = -1; diff --git a/tree.c b/tree.c index 955b53f6a57..2b78708766b 100644 --- a/tree.c +++ b/tree.c @@ -59,7 +59,7 @@ int read_tree_at(struct repository *r, oid_to_hex(&entry.oid), base->buf, entry.path); - if (repo_parse_commit(the_repository, commit)) + if (repo_parse_commit(r, commit)) die("Invalid commit %s in submodule path %s%s", oid_to_hex(&entry.oid), base->buf, entry.path); diff --git a/wt-status.c b/wt-status.c index 84726d26dc9..151b94aa369 100644 --- a/wt-status.c +++ b/wt-status.c @@ -1665,7 +1665,7 @@ static void wt_status_get_detached_from(struct repository *r, return; } - if (repo_dwim_ref(the_repository, cb.buf.buf, cb.buf.len, &oid, &ref, + if (repo_dwim_ref(r, cb.buf.buf, cb.buf.len, &oid, &ref, 1) == 1 && /* oid is a commit? match without further lookup */ (oideq(&cb.noid, &oid) || @@ -1678,9 +1678,9 @@ static void wt_status_get_detached_from(struct repository *r, state->detached_from = xstrdup(from); } else state->detached_from = - xstrdup(repo_find_unique_abbrev(the_repository, &cb.noid, DEFAULT_ABBREV)); + xstrdup(repo_find_unique_abbrev(r, &cb.noid, DEFAULT_ABBREV)); oidcpy(&state->detached_oid, &cb.noid); - state->detached_at = !repo_get_oid(the_repository, "HEAD", &oid) && + state->detached_at = !repo_get_oid(r, "HEAD", &oid) && oideq(&oid, &state->detached_oid); free(ref); @@ -1771,13 +1771,13 @@ void wt_status_get_state(struct repository *r, } else if (wt_status_check_rebase(NULL, state)) { ; /* all set */ } else if (refs_ref_exists(get_main_ref_store(r), "CHERRY_PICK_HEAD") && - !repo_get_oid(the_repository, "CHERRY_PICK_HEAD", &oid)) { + !repo_get_oid(r, "CHERRY_PICK_HEAD", &oid)) { state->cherry_pick_in_progress = 1; oidcpy(&state->cherry_pick_head_oid, &oid); } wt_status_check_bisect(NULL, state); if (refs_ref_exists(get_main_ref_store(r), "REVERT_HEAD") && - !repo_get_oid(the_repository, "REVERT_HEAD", &oid)) { + !repo_get_oid(r, "REVERT_HEAD", &oid)) { state->revert_in_progress = 1; oidcpy(&state->revert_head_oid, &oid); }