From patchwork Fri Apr 9 08:49:56 2021 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: 12193387 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E6865C433ED for ; Fri, 9 Apr 2021 08:50:23 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A792661185 for ; Fri, 9 Apr 2021 08:50:23 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232131AbhDIIud (ORCPT ); Fri, 9 Apr 2021 04:50:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38340 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231819AbhDIIu2 (ORCPT ); Fri, 9 Apr 2021 04:50:28 -0400 Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com [IPv6:2a00:1450:4864:20::62b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E1E04C061760 for ; Fri, 9 Apr 2021 01:50:13 -0700 (PDT) Received: by mail-ej1-x62b.google.com with SMTP id a7so7452403eju.1 for ; Fri, 09 Apr 2021 01:50:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=U7xybGHsN0JYfgY5tgrx2+cuNyyXZyfdogT5+tDXU+0=; b=PHfFOI2BkH1c4erX5yj/1S2eYK7lvnMV1sNh8yj/xTfqbPrUBNA5qZPHLdy65bqkVD AFs9OFur0DQxxP+GI0+jfxsrJozCcltsJt9zDetM0D2fJvtDi7nebYSM3sdZ5k2wGf1P +Tr1WqfNaNnJjcMLSOwT0HECX1CIVDzQ5nuhRY1c1ik2gRDlNM0uigIsXhHTMOYpgTYW XRvhdxME6+rP5kYyN3KFjCziXkusz84Lq9m/thAH1vFyMBj/DUmgR0+zO7Ag/E3xkIOl 15FxxJiIQCKFCn4Yw4XWSsnyF85mpKWgvVVWP8Yq8xQ8uKM+d6DSdufjDb5m8hvJs+SZ O5sg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=U7xybGHsN0JYfgY5tgrx2+cuNyyXZyfdogT5+tDXU+0=; b=Ru7NLh0vv0zhpc5MAJLvsBMJP9nAonwD6Qg1nbynzUerbJw6v7dEYFIhO1+w7geQE3 Pyr7wFyaeiIA4Y2IgXwsJC0M3zj9Y2wofru0mlZqWD8SobiNN/9uWsbr4eNOqd+KV1qZ qKHWqqP+Ga3AVQbxp57keWcYm8a/JWnbefTfcW2tjwgNFYap8P27FeTUTzh7JB/9Z+yD SKtiREwDSfGn+7K8M96E6WrqpdeKWtbhwE4r5yEd0tsJEkuYngdyZIVW0NqsNnPUWLSv 5UVhZjLSWzTPooT1wHc7NsGz1oJtBJUj+EgUF6G0VN5Z1Ur5c1N3/WaHvj/7GXGUetgr BnzQ== X-Gm-Message-State: AOAM531z8ymReYZClMcpmlyElcj/GefxFP9VskcREdEf85l11p8iBryE /fdz/u8I+Ntz//FXyI5BDhiz1b/7/GkM9g== X-Google-Smtp-Source: ABdhPJwy04L5xpoDwqpY/zFVnHiGJKSPN1NUeAD3KIk6+VAY8PpX3QRyp0yXPhVYCt7SClEMK02ndw== X-Received: by 2002:a17:907:94c3:: with SMTP id dn3mr15316743ejc.280.1617958212411; Fri, 09 Apr 2021 01:50:12 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id m29sm883601ejl.61.2021.04.09.01.50.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Apr 2021 01:50:11 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Schindelin , Jeff King , Taylor Blau , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= Subject: [PATCH 1/7] tree.c: fix misindentation in parse_tree_gently() Date: Fri, 9 Apr 2021 10:49:56 +0200 Message-Id: X-Mailer: git-send-email 2.31.1.592.gdf54ba9003 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org The variables declared in parse_tree_gently() had a single space after the TAB. This dates back to their introduction in bd2c39f58f9 ([PATCH] don't load and decompress objects twice with parse_object(), 2005-05-06). Let's fix them to follow the style of the rest of the file. Signed-off-by: Ævar Arnfjörð Bjarmason --- tree.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tree.c b/tree.c index 410e3b477e..482a37d8fa 100644 --- a/tree.c +++ b/tree.c @@ -123,9 +123,9 @@ int parse_tree_buffer(struct tree *item, void *buffer, unsigned long size) int parse_tree_gently(struct tree *item, int quiet_on_missing) { - enum object_type type; - void *buffer; - unsigned long size; + enum object_type type; + void *buffer; + unsigned long size; if (item->object.parsed) return 0; From patchwork Fri Apr 9 08:49:57 2021 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: 12193385 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 133CAC433B4 for ; Fri, 9 Apr 2021 08:50:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id BA306611AF for ; Fri, 9 Apr 2021 08:50:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231946AbhDIIu2 (ORCPT ); Fri, 9 Apr 2021 04:50:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38344 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229673AbhDIIu1 (ORCPT ); Fri, 9 Apr 2021 04:50:27 -0400 Received: from mail-ed1-x52d.google.com (mail-ed1-x52d.google.com [IPv6:2a00:1450:4864:20::52d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 065F8C061761 for ; Fri, 9 Apr 2021 01:50:15 -0700 (PDT) Received: by mail-ed1-x52d.google.com with SMTP id 18so5637452edx.3 for ; Fri, 09 Apr 2021 01:50:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=avqSmZXO+ZmGwi+38K71vAz0i3bCbHSQmqWF4mxaVM8=; b=sAQ7HRMEi7Lixav0gUrmBdi7dULr8agfUyhbtDqURC9m2S+jrtnowWYYksqRkN0RrW Y9mzMzAX5FaZA1gq+OaMuF7PLxY68569fQE+rQOikny3IPYYeGTQfDXtrWxIBJ1VlJ/l JeKpUtQvok3YYFikWc50W+BAAk5k2FkT8C0ZxE2s02f5U9ykrjko1YQfoLkDkfy1eftO nTiwz2A8xfpQKPF5j3MMPZksAPTmGsYrYo7tQGUkslKt0Z41eKEQDYaID0b/PSf8mShx QcSAG7bArC3x9tJyPmW4HwgwUGLGtonKxzO12ve+0W0P0EEVF8DDWoEh0UVjWE1Nkmre v/Bg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=avqSmZXO+ZmGwi+38K71vAz0i3bCbHSQmqWF4mxaVM8=; b=TU+CA5Ix2LYttZo3LNTWS3+zbCjRE12aT6Y3OXjxEBUXcqQ+Q322D0ORnBzOle5uzv PVrjCC9TiIUaAnHXmRHfY/pJ1mQxQ/kRY2D0fNUEx0rxHGG/iFW6UutZOJQ5TYgxb+mP +rBZjWXYErs9LxCUijLbY09Ua2YrwAT7CfT1YUpeWw0A8Ti6cS/614cgAo4xSYys0fui 0zgKXp2Z/X8PjhkWBX9OdwIdShcPeWJmshuPeuJffAf4LErpHFmJmPV+ljLs9J3dezHe IE4wjkwUInuluUuROW9sGgfR9vdq70GFOUPzDqccUb14yh9ikNTyr2jA8usR147caPlF MIjw== X-Gm-Message-State: AOAM533FXOpxkJ2jylvDh1/HWdZV0cXofHEoKYK7CjqPb5hw3RSUqVvs F1ZbXaYrlAQf4czYCyIFMU29JRSm+udVtg== X-Google-Smtp-Source: ABdhPJy3AoMc9lh3leHon4I8lUIN4bBEmwjmWASg4F1xF5hG2uUl6q/1K3Pn0xwO7qspoAJkyQWflA== X-Received: by 2002:aa7:d78a:: with SMTP id s10mr16198822edq.226.1617958213509; Fri, 09 Apr 2021 01:50:13 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id m29sm883601ejl.61.2021.04.09.01.50.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Apr 2021 01:50:12 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Schindelin , Jeff King , Taylor Blau , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= Subject: [PATCH 2/7] object.c: add a utility function for "expected type X, got Y" Date: Fri, 9 Apr 2021 10:49:57 +0200 Message-Id: X-Mailer: git-send-email 2.31.1.592.gdf54ba9003 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Refactor various "Object X is not Y" error messages so that they use the same message as the long-standing object_as_type() error message. Now we'll consistently report e.g. that we got a commit when we expected a tag, not just that the object is not a tag. Signed-off-by: Ævar Arnfjörð Bjarmason --- builtin/index-pack.c | 9 +++------ combine-diff.c | 3 +-- commit.c | 10 ++++------ merge-recursive.c | 1 + object.c | 25 ++++++++++++++++++++++++- object.h | 5 +++++ tree.c | 7 ++++--- 7 files changed, 42 insertions(+), 18 deletions(-) diff --git a/builtin/index-pack.c b/builtin/index-pack.c index c0e3768c32..eabd9d4677 100644 --- a/builtin/index-pack.c +++ b/builtin/index-pack.c @@ -218,8 +218,8 @@ static int mark_link(struct object *obj, enum object_type type, if (!obj) return -1; - if (type != OBJ_ANY && obj->type != type) - die(_("object type mismatch at %s"), oid_to_hex(&obj->oid)); + if (type != OBJ_ANY) + oid_is_type_or_die(&obj->oid, obj->type, &type); obj->flags |= FLAG_LINK; return 0; @@ -241,10 +241,7 @@ static unsigned check_object(struct object *obj) if (type <= 0) die(_("did not receive expected object %s"), oid_to_hex(&obj->oid)); - if (type != obj->type) - die(_("object %s: expected type %s, found %s"), - oid_to_hex(&obj->oid), - type_name(obj->type), type_name(type)); + oid_is_type_or_die(&obj->oid, obj->type, &type); obj->flags |= FLAG_CHECKED; return 1; } diff --git a/combine-diff.c b/combine-diff.c index 06635f91bc..aa767dbb8e 100644 --- a/combine-diff.c +++ b/combine-diff.c @@ -333,8 +333,7 @@ static char *grab_blob(struct repository *r, free_filespec(df); } else { blob = read_object_file(oid, &type, size); - if (type != OBJ_BLOB) - die("object '%s' is not a blob!", oid_to_hex(oid)); + oid_is_type_or_die(oid, OBJ_BLOB, &type); } return blob; } diff --git a/commit.c b/commit.c index 8ea55a447f..b370100367 100644 --- a/commit.c +++ b/commit.c @@ -299,9 +299,7 @@ const void *repo_get_commit_buffer(struct repository *r, if (!ret) die("cannot read commit object %s", oid_to_hex(&commit->object.oid)); - if (type != OBJ_COMMIT) - die("expected commit for %s, got %s", - oid_to_hex(&commit->object.oid), type_name(type)); + oid_is_type_or_die(&commit->object.oid, OBJ_COMMIT, &type); if (sizep) *sizep = size; } @@ -489,10 +487,10 @@ int repo_parse_commit_internal(struct repository *r, return quiet_on_missing ? -1 : error("Could not read %s", oid_to_hex(&item->object.oid)); - if (type != OBJ_COMMIT) { + ret = oid_is_type_or_error(&item->object.oid, OBJ_COMMIT, &type); + if (ret) { free(buffer); - return error("Object %s not a commit", - oid_to_hex(&item->object.oid)); + return ret; } ret = parse_commit_buffer(r, item, buffer, size, 0); diff --git a/merge-recursive.c b/merge-recursive.c index ed31f9496c..be7f727b5a 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -2971,6 +2971,7 @@ static int read_oid_strbuf(struct merge_options *opt, if (!buf) return err(opt, _("cannot read object %s"), oid_to_hex(oid)); if (type != OBJ_BLOB) { + const char* msg = oid_is_type_or_die_msg(oid, OBJ_BLOB, &type); free(buf); return err(opt, _("object %s is not a blob"), oid_to_hex(oid)); } diff --git a/object.c b/object.c index 2216cdcda2..8b2df3a94c 100644 --- a/object.c +++ b/object.c @@ -159,6 +159,29 @@ void *create_object(struct repository *r, const struct object_id *oid, void *o) return obj; } +static const char *object_type_mismatch_msg = N_("object %s is a %s, not a %s"); + +void oid_is_type_or_die(const struct object_id *oid, + enum object_type want, + enum object_type *type) +{ + if (want == *type) + return; + die(_(object_type_mismatch_msg), oid_to_hex(oid), + type_name(*type), type_name(want)); +} + +int oid_is_type_or_error(const struct object_id *oid, + enum object_type want, + enum object_type *type) +{ + if (want == *type) + return 0; + return error(_(object_type_mismatch_msg), + oid_to_hex(oid), type_name(*type), + type_name(want)); +} + void *object_as_type(struct object *obj, enum object_type type, int quiet) { if (obj->type == type) @@ -172,7 +195,7 @@ void *object_as_type(struct object *obj, enum object_type type, int quiet) } else { if (!quiet) - error(_("object %s is a %s, not a %s"), + error(_(object_type_mismatch_msg), oid_to_hex(&obj->oid), type_name(obj->type), type_name(type)); return NULL; diff --git a/object.h b/object.h index 5e7a523e85..d2d4a236d0 100644 --- a/object.h +++ b/object.h @@ -124,6 +124,11 @@ void *create_object(struct repository *r, const struct object_id *oid, void *obj void *object_as_type(struct object *obj, enum object_type type, int quiet); +void oid_is_type_or_die(const struct object_id *oid, enum object_type want, + enum object_type *type); +int oid_is_type_or_error(const struct object_id *oid, enum object_type want, + enum object_type *type); + /* * Returns the object, having parsed it to find out what it is. * diff --git a/tree.c b/tree.c index 482a37d8fa..6717d982fa 100644 --- a/tree.c +++ b/tree.c @@ -126,6 +126,7 @@ int parse_tree_gently(struct tree *item, int quiet_on_missing) enum object_type type; void *buffer; unsigned long size; + int ret; if (item->object.parsed) return 0; @@ -134,10 +135,10 @@ int parse_tree_gently(struct tree *item, int quiet_on_missing) return quiet_on_missing ? -1 : error("Could not read %s", oid_to_hex(&item->object.oid)); - if (type != OBJ_TREE) { + ret = oid_is_type_or_error(&item->object.oid, OBJ_TREE, &type); + if (ret) { free(buffer); - return error("Object %s not a tree", - oid_to_hex(&item->object.oid)); + return ret; } return parse_tree_buffer(item, buffer, size); } From patchwork Fri Apr 9 08:49:58 2021 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: 12193389 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6BBEAC433B4 for ; Fri, 9 Apr 2021 08:50:26 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 3E23861185 for ; Fri, 9 Apr 2021 08:50:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232292AbhDIIuh (ORCPT ); Fri, 9 Apr 2021 04:50:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38352 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231891AbhDIIu2 (ORCPT ); Fri, 9 Apr 2021 04:50:28 -0400 Received: from mail-ed1-x533.google.com (mail-ed1-x533.google.com [IPv6:2a00:1450:4864:20::533]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DA156C061761 for ; Fri, 9 Apr 2021 01:50:15 -0700 (PDT) Received: by mail-ed1-x533.google.com with SMTP id f8so5616711edd.11 for ; Fri, 09 Apr 2021 01:50:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=/hIrXibzbQzsqIhnEtOW2QwhgJT0nyQUQRIZzgSz6Og=; b=qEmCqGXMWcLndqAbOeOYCcr0tKvCLAsAj33zrLSYmgJ27Khet2lafswMEKEUnPWGy+ pRmA1nlzBasvAaED3lLgkYSq6QUOmEuNnDL5pGv1ueQBH5TZzL9F00Bm5/cw3Uq0EL8/ UhRY7/dxJjmpLxjCJlt7/UnSpdCtzDDK+AtVcu0/T/ycI4IGHYloaWdBu37ep3zd47iN JXjoYFQkALok3jd28VAxg3GsZgEmAw4pOuRmgtORxYyw9XWYhDh+XrNghQpvKyJ70qZY rnjuOaxAE8v/lbjwsch68xDMg+Jqwg+dJ8aMROW5ouyEXNcB5Pjtbp5tW54CLJ8WnX87 ROGg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=/hIrXibzbQzsqIhnEtOW2QwhgJT0nyQUQRIZzgSz6Og=; b=MrwqRVEt21PnhAvMv7sC6BkovJhlqkOKmKFSxzanVCqyQdJAN3AkYFuMcYJ8TvZYMm L1wZgukzobtaZ5+hZh8IeREGHrof97KSHFoJ3yxvbXn9cxBSBaMtjU8u7NaknuMOTX0G Lrek2XjRmq9Q3sRhMf6/9KobDH0RzHaiLb5yu82VEUvP/dGVllQHPDdOctjfeFy23NzU x+/zmq1ptCiZN45v3e4lnj9WT/LE6kqWun5gmx2lU26okhpZc5s9QPT8HpZ8mJ+EA3jj HnrtsAHQDnrBLn7GrvpiHhT8ZQxrSiKMYDOTGXampZqXuC8DMwJKl0wzH1k03HuXiA4d Zcng== X-Gm-Message-State: AOAM530nvG+6iT75FCvVT7rs+SS0kbyc0P4QcRAPaoR/cbe2xaASE9iY Xv/W3ToqfC2eOxYMysOueDCE/TwdCnCUgg== X-Google-Smtp-Source: ABdhPJxpbDfaQWdE31ao0Rj8THYCSQ7T6TYPhrd+mxf77Vf3s5PRpo0V4HAmWpWKx0NS2VzeZGD4/A== X-Received: by 2002:a05:6402:9:: with SMTP id d9mr16402029edu.67.1617958214428; Fri, 09 Apr 2021 01:50:14 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id m29sm883601ejl.61.2021.04.09.01.50.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Apr 2021 01:50:13 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Schindelin , Jeff King , Taylor Blau , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= Subject: [PATCH 3/7] object.c: add and use oid_is_type_or_die_msg() function Date: Fri, 9 Apr 2021 10:49:58 +0200 Message-Id: X-Mailer: git-send-email 2.31.1.592.gdf54ba9003 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Add a oid_is_type_or_die_msg() function to go with the "error" and "die" forms for emitting "expected type X, got Y" messages. This is useful for callers that want the message itself as a char *. Signed-off-by: Ævar Arnfjörð Bjarmason --- merge-recursive.c | 6 ++++-- object.c | 12 ++++++++++++ object.h | 3 +++ 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/merge-recursive.c b/merge-recursive.c index be7f727b5a..2429d2cb89 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -2971,9 +2971,11 @@ static int read_oid_strbuf(struct merge_options *opt, if (!buf) return err(opt, _("cannot read object %s"), oid_to_hex(oid)); if (type != OBJ_BLOB) { - const char* msg = oid_is_type_or_die_msg(oid, OBJ_BLOB, &type); + char *msg = oid_is_type_or_die_msg(oid, OBJ_BLOB, &type); + int ret = err(opt, msg); free(buf); - return err(opt, _("object %s is not a blob"), oid_to_hex(oid)); + free(msg); + return ret; } strbuf_attach(dst, buf, size, size + 1); return 0; diff --git a/object.c b/object.c index 8b2df3a94c..1573e571de 100644 --- a/object.c +++ b/object.c @@ -182,6 +182,18 @@ int oid_is_type_or_error(const struct object_id *oid, type_name(want)); } +char* oid_is_type_or_die_msg(const struct object_id *oid, + enum object_type want, + enum object_type *type) +{ + struct strbuf sb = STRBUF_INIT; + if (want == *type) + BUG("call this just to get the message!"); + strbuf_addf(&sb, _(object_type_mismatch_msg), oid_to_hex(oid), + type_name(*type), type_name(want)); + return strbuf_detach(&sb, NULL); +} + void *object_as_type(struct object *obj, enum object_type type, int quiet) { if (obj->type == type) diff --git a/object.h b/object.h index d2d4a236d0..cdc3242a12 100644 --- a/object.h +++ b/object.h @@ -128,6 +128,9 @@ void oid_is_type_or_die(const struct object_id *oid, enum object_type want, enum object_type *type); int oid_is_type_or_error(const struct object_id *oid, enum object_type want, enum object_type *type); +char* oid_is_type_or_die_msg(const struct object_id *oid, + enum object_type want, + enum object_type *type); /* * Returns the object, having parsed it to find out what it is. From patchwork Fri Apr 9 08:49:59 2021 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: 12193391 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 84C10C43460 for ; Fri, 9 Apr 2021 08:50:27 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 48AB4611AF for ; Fri, 9 Apr 2021 08:50:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232328AbhDIIui (ORCPT ); Fri, 9 Apr 2021 04:50:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38356 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229673AbhDIIu3 (ORCPT ); Fri, 9 Apr 2021 04:50:29 -0400 Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com [IPv6:2a00:1450:4864:20::535]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B43C6C061762 for ; Fri, 9 Apr 2021 01:50:16 -0700 (PDT) Received: by mail-ed1-x535.google.com with SMTP id 18so5637545edx.3 for ; Fri, 09 Apr 2021 01:50:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=JRH+yAWNcriUMTwf4DSfmOI/KdeSaK4uRJx35+CDGcI=; b=lCcw0UT6+qOv+7LETB4ufkhSv2oTUMQ/PPBZA2goD6Wy3uwhnOL7kpTFodZa+KiuQx b3p6/9qXpleJrBjahTEkKEbXcElJnmRGsgKk+aOkR2LRnWsaCvuP4//cY+UGuDoEynXK xhAv9PrapAW+U15OPpM3WWxXhl2odHwq01i6D1SFjurmVXpq58eBx4M2rqUE9wfBT7vf 7r+2DP4zf1dPCwwr0cnvbTjfnSOiiyECvK3i9URPXWlH+IdA93Syt98gRdAVeDmhCjkc 8ih/uol2xGfJX148qWBXGR/6v6/OAIIrU9mM7sVzPWBRv13VckK9cnvX1whratJygm8W NHpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=JRH+yAWNcriUMTwf4DSfmOI/KdeSaK4uRJx35+CDGcI=; b=o11B77mgfIZIOlnmbAIlSx7/mAE4SBJ1kuz/Sz+0Oa1vQv7sjUWJYAM/UD9K9Ea0iI ZOzj66Sa5Ovtjk4q1fiECtypXvgWlsQkDN6G/truPDNOWYp2dvlgbF0gYAjpSUJfsZ9i rtE9QvDxXhpNFnG76zx5iYAUHsP8BswxZEI3u6cPbBVqexeD6NUrTYgv75rdEjQToYIM 5VuNw9xUqum5yod6hD0H+aJf5BvO5eGPtycOjyn1iBcBJpmqgjZlHrHLiAiqJRFeEtCx 9+MBFzYF1IlN7iuuRq7We4IQ51mZg3BmI+KRHvCtw9rtPAy68s1g/9wl4wqcRjPWifnC bytQ== X-Gm-Message-State: AOAM532CfHCEgZ14QwB6c5xsU7CDf/VhtPnUHIxnZlm58xsQkBa/KilM ilY0v7qyWaWxfgpwhiDqPxa8slKVG7tCqw== X-Google-Smtp-Source: ABdhPJxqfmX1zZK1SCmM/AYiJW3CjT9cpdLgd/5TGF0KrGllKEgpKhm/GmBmKewPwFr8Okxq7iVdTw== X-Received: by 2002:a50:9b12:: with SMTP id o18mr16614643edi.376.1617958215302; Fri, 09 Apr 2021 01:50:15 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id m29sm883601ejl.61.2021.04.09.01.50.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Apr 2021 01:50:14 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Schindelin , Jeff King , Taylor Blau , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= Subject: [PATCH 4/7] commit-graph: use obj->type, not object_as_type() Date: Fri, 9 Apr 2021 10:49:59 +0200 Message-Id: X-Mailer: git-send-email 2.31.1.592.gdf54ba9003 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Change a check of a deref_tag() return value to just use obj->type instead of object_as_type(). The object_as_type() function is for low-level use by fsck, {commit,tree,blob,tag}.c and the like, here we can just assume the object is fully initialized. As can be seen in plenty of existing uses in our codebase the return value of deref_tag() won't be an obj->type == OBJ_NONE or !obj->parsed. Fixes code added in 2f00c355cb7 (commit-graph: drop COMMIT_GRAPH_WRITE_CHECK_OIDS flag, 2020-05-13). Signed-off-by: Ævar Arnfjörð Bjarmason --- builtin/commit-graph.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builtin/commit-graph.c b/builtin/commit-graph.c index cd86315221..347d65abc8 100644 --- a/builtin/commit-graph.c +++ b/builtin/commit-graph.c @@ -158,7 +158,7 @@ static int read_one_commit(struct oidset *commits, struct progress *progress, NULL, 0); if (!result) return error(_("invalid object: %s"), hash); - else if (object_as_type(result, OBJ_COMMIT, 1)) + else if (result->type == OBJ_COMMIT) oidset_insert(commits, &result->oid); display_progress(progress, oidset_size(commits)); From patchwork Fri Apr 9 08:50:00 2021 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: 12193393 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9875DC43461 for ; Fri, 9 Apr 2021 08:50:28 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 613A461177 for ; Fri, 9 Apr 2021 08:50:28 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231954AbhDIIuj (ORCPT ); Fri, 9 Apr 2021 04:50:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38358 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232087AbhDIIua (ORCPT ); Fri, 9 Apr 2021 04:50:30 -0400 Received: from mail-ed1-x52d.google.com (mail-ed1-x52d.google.com [IPv6:2a00:1450:4864:20::52d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 790F0C061763 for ; Fri, 9 Apr 2021 01:50:17 -0700 (PDT) Received: by mail-ed1-x52d.google.com with SMTP id f8so5616782edd.11 for ; Fri, 09 Apr 2021 01:50:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=a2iv9w+ZdqWP2KNltbPrlBVOLm2UiZ1n9P9fxtphSZ0=; b=tv2052qgkcRlvgKyATWP/n5cjekwqlDkK8qrHt8KqL/Pwe2FaNRv/FB+lNCQVhoSwo SgAg7d5eTRcLSnNwf2Z7HMh3zBcz+6o0RzEb5Pm/8uDNZuOADjHWZEpXeHM8nP1H3cfP AEuxJk6WKftHB5ea5zpYFky1PgC6fx2wX5uaFh0zSALiHTMvBhFB0d14taCnGavp6ZZi SlraI88g7Rcu5qpMBMEuu3hOr16a99hdX5f1Hr0s7aqw9CYVbyQzIj815+UL+PJMxOBQ 2MzenGuOQuDcODJuB6bOCUkAxxdAimGm2rouqVWFGOjW7XSNzDgzJD4IG6p3M/qY+gg4 eppw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=a2iv9w+ZdqWP2KNltbPrlBVOLm2UiZ1n9P9fxtphSZ0=; b=eyOqi9KBgeivugoMGTywZfglyGFWascXzUI6yO2ZkqauiTutwVuOgMv33pONZekii5 mDCix4hMb8j8VyvHU7A2J+Lr5NY8+JS1noEILPixTFVgK0QyOV/WP+cSOv7plO7w5qj3 8Vri/odjqHY6/Dk7TOyqDErrEwtajt4IlqUWQQyk+Imz4/kkA9vNRDSQ0Em+0PaV7pzx RhiEYYJ+rxbxeSZGvRog7GI4Huffyjqq4TOXqMx1zhN45/sCzfNJGngcHpLhI3r3bo4w dAT3FEdiDXEy9umw4TSGP/tW6/33NPgspQnuFS46BScJxrTJzD4QVj4Hv30fq8iVpLGs UrVA== X-Gm-Message-State: AOAM533blF07PQzyvfyf7cPPyiUc7VRQFXLVzFjTh6nhJ+9ct49ASOoU 0FJicjeOmT6KsdagKsZ7bB515JdJitUGHA== X-Google-Smtp-Source: ABdhPJwtOfU7G5vdcwfBnpgHfoxylzDEO2Kct3A3pcpqjeaYQ2e0xU8arlniAIpMkYQvXXD0WG/j7A== X-Received: by 2002:a50:c356:: with SMTP id q22mr3191640edb.206.1617958216064; Fri, 09 Apr 2021 01:50:16 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id m29sm883601ejl.61.2021.04.09.01.50.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Apr 2021 01:50:15 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Schindelin , Jeff King , Taylor Blau , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= Subject: [PATCH 5/7] commit.c: don't use deref_tag() -> object_as_type() Date: Fri, 9 Apr 2021 10:50:00 +0200 Message-Id: X-Mailer: git-send-email 2.31.1.592.gdf54ba9003 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Change a use of the object_as_type() function introduced in 8ff226a9d5e (add object_as_type helper for casting objects, 2014-07-13) to instead assume that we're not dealing with OBJ_NONE (or OBJ_BAD) from deref_tag(). This makes this code easier to read, as the reader isn't wondering why the function would need to deal with that. We're simply doing a check of OBJ_{COMMIT,TREE,BLOB,TAG} here, not the bare-bones initialization object_as_type() might be called on to do. Signed-off-by: Ævar Arnfjörð Bjarmason --- commit.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/commit.c b/commit.c index b370100367..437a8b8548 100644 --- a/commit.c +++ b/commit.c @@ -31,13 +31,19 @@ const char *commit_type = "commit"; struct commit *lookup_commit_reference_gently(struct repository *r, const struct object_id *oid, int quiet) { - struct object *obj = deref_tag(r, - parse_object(r, oid), - NULL, 0); + struct object *tmp = parse_object(r, oid); + struct object *obj = deref_tag(r, tmp, NULL, 0); if (!obj) return NULL; - return object_as_type(obj, OBJ_COMMIT, quiet); + + if (obj->type != OBJ_COMMIT) { + enum object_type want = OBJ_COMMIT; + if (!quiet) + oid_is_type_or_error(oid, OBJ_COMMIT, &want); + return NULL; + } + return (struct commit *)obj; } struct commit *lookup_commit_reference(struct repository *r, const struct object_id *oid) From patchwork Fri Apr 9 08:50:01 2021 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: 12193395 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EB467C433ED for ; Fri, 9 Apr 2021 08:50:29 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id AE7BA61177 for ; Fri, 9 Apr 2021 08:50:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232354AbhDIIuk (ORCPT ); Fri, 9 Apr 2021 04:50:40 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38364 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232099AbhDIIub (ORCPT ); Fri, 9 Apr 2021 04:50:31 -0400 Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com [IPv6:2a00:1450:4864:20::536]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 44FB7C061760 for ; Fri, 9 Apr 2021 01:50:18 -0700 (PDT) Received: by mail-ed1-x536.google.com with SMTP id e7so5602014edu.10 for ; Fri, 09 Apr 2021 01:50:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=QX0KPiKe3u6tn0eADMNJ4VFyM+3bJ8Anl2+EbHHFofY=; b=UQrwPkIC3yz6Z892Unad5ynNDupuLTrFVb1VGyNGJZZ5LU8kacUYqV81+SntJi7WZY p/jeGbpwejDh+WzuR1sX4+Dif0TBPy8jw1Ebw8vXU3kiX8yGNM1M9PoKo5tyKir7lOrV kJ9bltjrcfKa8hjw2UvamT339/LoX2tBXDV/ZCNlyJa0RRtpRDDoF0vT6EcqDgZ1gWTO 92x9cC1GQ8B0OlpjPT/QUQeIVzKt4THq908c4KQFc9BTkCnxyT6pZbPm2DM5dZUpmrWF mvBl031JvmP7qvjYhXURh1bH/r6EiR+A0/ZMjrUgaMlAAH4I4XFLr9kYSwTmy0+J4WUZ jxHQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=QX0KPiKe3u6tn0eADMNJ4VFyM+3bJ8Anl2+EbHHFofY=; b=jezg9AdUpJywqfRzEs6FP+0jcfQARocfOmqKUNNvI3FZP2WjGAHv6gbY+Z7aWrK+D/ LFTGxydWRQM3gfbFPDOEYoY2zgbgQEBrRSVJFNW3lCOY34Gct3uCUTXZE4q+3EurDABl Z6YtmupRoveiFRbSzYLtZ9vIetba1E73BuThlNg9SUzaXr6QRxRqko2mv5KsRI02/u1/ ObwrbwxWOcePUcUXb4CRnejfEcx0k0ZP5Akxxn1x6o+Yfb4n6g+7AjOXGi8aXxQSQ/Ee q8smlHP9MV66vdp8R5H1y9niRFPppDgW9jNr3XiQZ5Es6IdxtqfP1t69W8XvN/Mn+LdQ RKWg== X-Gm-Message-State: AOAM533z/k9rlc7hNO3RecLCXRsrjk1wAMTqySmUowZeBQi2vhjPCm1y WMoCHbL6fSFftMsnLAFIfDyl35Ce4rwOtg== X-Google-Smtp-Source: ABdhPJz/BqkUMqawsApris//LfdxGNeJLMIBYPDpKnJ7Zd8vxYCGb6YUi2QZqnMjCwWARvBD1lTQwQ== X-Received: by 2002:a05:6402:3592:: with SMTP id y18mr16279277edc.360.1617958216812; Fri, 09 Apr 2021 01:50:16 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id m29sm883601ejl.61.2021.04.09.01.50.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Apr 2021 01:50:16 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Schindelin , Jeff King , Taylor Blau , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= Subject: [PATCH 6/7] object.c: normalize brace style in object_as_type() Date: Fri, 9 Apr 2021 10:50:01 +0200 Message-Id: X-Mailer: git-send-email 2.31.1.592.gdf54ba9003 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Normalize the brace style in this function introduced in 8ff226a9d5e (add object_as_type helper for casting objects, 2014-07-13) to be in line with the coding style of the project. Signed-off-by: Ævar Arnfjörð Bjarmason --- object.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/object.c b/object.c index 1573e571de..e3400d1039 100644 --- a/object.c +++ b/object.c @@ -196,16 +196,15 @@ char* oid_is_type_or_die_msg(const struct object_id *oid, void *object_as_type(struct object *obj, enum object_type type, int quiet) { - if (obj->type == type) + if (obj->type == type) { return obj; - else if (obj->type == OBJ_NONE) { + } else if (obj->type == OBJ_NONE) { if (type == OBJ_COMMIT) init_commit_node((struct commit *) obj); else obj->type = type; return obj; - } - else { + } else { if (!quiet) error(_(object_type_mismatch_msg), oid_to_hex(&obj->oid), From patchwork Fri Apr 9 08:50:02 2021 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: 12193397 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 932B8C43460 for ; Fri, 9 Apr 2021 08:50:31 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 55866611AE for ; Fri, 9 Apr 2021 08:50:31 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232415AbhDIIum (ORCPT ); Fri, 9 Apr 2021 04:50:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38374 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232209AbhDIIud (ORCPT ); Fri, 9 Apr 2021 04:50:33 -0400 Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 223ACC061764 for ; Fri, 9 Apr 2021 01:50:19 -0700 (PDT) Received: by mail-ed1-x52e.google.com with SMTP id 18so5637649edx.3 for ; Fri, 09 Apr 2021 01:50:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=OJTjYpSgXIINYC5sJJJUbJk7vTaSlSoAGoPEtHEAvSw=; b=WJYBRgP2mcS6zWQ8HkEnGmsE/FnTJvi+HBFfvWTMa/7KrUx9Nr2Q1u7ttutNEUdoWq c9s4oSjY6lkSpFQ2dIo3cjlw8EWM6nxANvPtgk1/kjUHrp1Q1OBitvXbVhJNqGW/uNfR BJljZOG9kkftd4Ix+4iqD2B+zS5/coK1Tb63maKz1wSNPGe1sY5m0TQB/JCkoi0PcO4b zujwZMrxoCAhHgNLFyVvi095r81s7XDDLb7p4r8blC9khmF3cycik3PRUmoz4HtHBzOq 9UBXmyGcwrHxaMWDVVjAIevDMLDU6wxdM5FEmiiW6P+0MZuGNdrH7ZklYIjtLClbANuf Mwhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=OJTjYpSgXIINYC5sJJJUbJk7vTaSlSoAGoPEtHEAvSw=; b=BMN83rsZx5WYuxzGVzyXwyqNUZLh5prSSnC2+pszPFXokTmQHV+47aGD/4lsEJAadC ZphL6KNmLHb92hG6J2V9giyF2Pj+BkEqo0vvY3oLAnnDB9JrjJY67eK+g0m39xMQGDFH u2N6oaP6DFqIVTnNDSdSYfr6jJf/p5pzAzXwggwdS3dLjDwj51WdFdv29mVaEe/arCSi tpk7gpsE89XB3IaE/rZ+vEJlX2ZMdymNoPgDLh0pMJEy2/XiykJoz9VCjO56Pjwg3qm/ r9n1BmMaM7qRZU16UhyQMiUi9sQ8lKUW1BBNrzrDwbPL4ZQdmmpzeWfHnloKWd5Cs4FH 69jw== X-Gm-Message-State: AOAM5338VighOJKrj/H6+Uk5PsJYvc6nYlO3Wjk19mGi6jJNndveTl5i 2wFVNwG/vMoWfr5E3mfWn9AdO+ogmUvYhg== X-Google-Smtp-Source: ABdhPJxFQcpDQ5f7AHkn1k3TgphO2eB806KqooHOLtcRdeGyEiZJaj1u2io68OCW4pAhahYPglmu8w== X-Received: by 2002:a05:6402:1157:: with SMTP id g23mr16445618edw.303.1617958217601; Fri, 09 Apr 2021 01:50:17 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id m29sm883601ejl.61.2021.04.09.01.50.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Apr 2021 01:50:17 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Schindelin , Jeff King , Taylor Blau , Elijah Newren , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= Subject: [PATCH 7/7] object.c: remove "quiet" parameter from object_as_type() Date: Fri, 9 Apr 2021 10:50:02 +0200 Message-Id: X-Mailer: git-send-email 2.31.1.592.gdf54ba9003 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Remove the now-unused "quiet" parameter from object_as_type(). As shown in preceding commits the previous users of this parameter were better off with higher-level APIs. The "quiet" parameter was originally introduced when the object_as_type() function was added in 8ff226a9d5e (add object_as_type helper for casting objects,. 2014-07-13), but the commit.c use-case for it is now gone. Signed-off-by: Ævar Arnfjörð Bjarmason --- blob.c | 2 +- builtin/fsck.c | 2 +- commit.c | 8 +++++--- object.c | 9 ++++----- object.h | 2 +- refs.c | 2 +- t/helper/test-reach.c | 2 +- tag.c | 2 +- tree.c | 2 +- 9 files changed, 16 insertions(+), 15 deletions(-) diff --git a/blob.c b/blob.c index 389a7546dc..b5bd27844e 100644 --- a/blob.c +++ b/blob.c @@ -10,7 +10,7 @@ struct blob *lookup_blob(struct repository *r, const struct object_id *oid) struct object *obj = lookup_object(r, oid); if (!obj) return create_object(r, oid, alloc_blob_node(r)); - return object_as_type(obj, OBJ_BLOB, 0); + return object_as_type(obj, OBJ_BLOB); } int parse_blob_buffer(struct blob *item) diff --git a/builtin/fsck.c b/builtin/fsck.c index 70ff95837a..5d534cf218 100644 --- a/builtin/fsck.c +++ b/builtin/fsck.c @@ -221,7 +221,7 @@ static void mark_unreachable_referents(const struct object_id *oid) enum object_type type = oid_object_info(the_repository, &obj->oid, NULL); if (type > 0) - object_as_type(obj, type, 0); + object_as_type(obj, type); } options.walk = mark_used; diff --git a/commit.c b/commit.c index 437a8b8548..3014559d66 100644 --- a/commit.c +++ b/commit.c @@ -38,9 +38,11 @@ struct commit *lookup_commit_reference_gently(struct repository *r, return NULL; if (obj->type != OBJ_COMMIT) { - enum object_type want = OBJ_COMMIT; + if (obj->type <= 0) + BUG("noes"); if (!quiet) - oid_is_type_or_error(oid, OBJ_COMMIT, &want); + fprintf(stderr, "noes ohes");/* + oid_is_type_or_error(oid, OBJ_COMMIT, &obj->type);*/ return NULL; } return (struct commit *)obj; @@ -68,7 +70,7 @@ struct commit *lookup_commit(struct repository *r, const struct object_id *oid) struct object *obj = lookup_object(r, oid); if (!obj) return create_object(r, oid, alloc_commit_node(r)); - return object_as_type(obj, OBJ_COMMIT, 0); + return object_as_type(obj, OBJ_COMMIT); } struct commit *lookup_commit_reference_by_name(const char *name) diff --git a/object.c b/object.c index e3400d1039..715e358603 100644 --- a/object.c +++ b/object.c @@ -194,7 +194,7 @@ char* oid_is_type_or_die_msg(const struct object_id *oid, return strbuf_detach(&sb, NULL); } -void *object_as_type(struct object *obj, enum object_type type, int quiet) +void *object_as_type(struct object *obj, enum object_type type) { if (obj->type == type) { return obj; @@ -205,10 +205,9 @@ void *object_as_type(struct object *obj, enum object_type type, int quiet) obj->type = type; return obj; } else { - if (!quiet) - error(_(object_type_mismatch_msg), - oid_to_hex(&obj->oid), - type_name(obj->type), type_name(type)); + error(_(object_type_mismatch_msg), + oid_to_hex(&obj->oid), + type_name(obj->type), type_name(type)); return NULL; } } diff --git a/object.h b/object.h index cdc3242a12..61857ee48c 100644 --- a/object.h +++ b/object.h @@ -122,7 +122,7 @@ struct object *lookup_object(struct repository *r, const struct object_id *oid); void *create_object(struct repository *r, const struct object_id *oid, void *obj); -void *object_as_type(struct object *obj, enum object_type type, int quiet); +void *object_as_type(struct object *obj, enum object_type type); void oid_is_type_or_die(const struct object_id *oid, enum object_type want, enum object_type *type); diff --git a/refs.c b/refs.c index 261fd82beb..7f4ca3441c 100644 --- a/refs.c +++ b/refs.c @@ -341,7 +341,7 @@ enum peel_status peel_object(const struct object_id *name, struct object_id *oid if (o->type == OBJ_NONE) { int type = oid_object_info(the_repository, name, NULL); - if (type < 0 || !object_as_type(o, type, 0)) + if (type < 0 || !object_as_type(o, type)) return PEEL_INVALID; } diff --git a/t/helper/test-reach.c b/t/helper/test-reach.c index cda804ed79..c9fd74b21f 100644 --- a/t/helper/test-reach.c +++ b/t/helper/test-reach.c @@ -67,7 +67,7 @@ int cmd__reach(int ac, const char **av) die("failed to load commit for input %s resulting in oid %s\n", buf.buf, oid_to_hex(&oid)); - c = object_as_type(peeled, OBJ_COMMIT, 0); + c = object_as_type(peeled, OBJ_COMMIT); if (!c) die("failed to load commit for input %s resulting in oid %s\n", diff --git a/tag.c b/tag.c index 871c4c9a14..e750b00cf5 100644 --- a/tag.c +++ b/tag.c @@ -104,7 +104,7 @@ struct tag *lookup_tag(struct repository *r, const struct object_id *oid) struct object *obj = lookup_object(r, oid); if (!obj) return create_object(r, oid, alloc_tag_node(r)); - return object_as_type(obj, OBJ_TAG, 0); + return object_as_type(obj, OBJ_TAG); } static timestamp_t parse_tag_date(const char *buf, const char *tail) diff --git a/tree.c b/tree.c index 6717d982fa..0bd18abd64 100644 --- a/tree.c +++ b/tree.c @@ -107,7 +107,7 @@ struct tree *lookup_tree(struct repository *r, const struct object_id *oid) struct object *obj = lookup_object(r, oid); if (!obj) return create_object(r, oid, alloc_tree_node(r)); - return object_as_type(obj, OBJ_TREE, 0); + return object_as_type(obj, OBJ_TREE); } int parse_tree_buffer(struct tree *item, void *buffer, unsigned long size)