git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 1/2] fsck.c: Change the type of fsck_ident()'s first argument

From
Yuxuan Shui <yshuiv7@gmail.com>
Date
Mar 13, 2014, 04:29 UTC
Message-ID
<CAGqt0zwivxtsKqZz9mGPxECHXt3Xd8eJLhDdBPr7Kpk-+UT5uQ@mail.gmail.com>
In-Reply-To
<20140312202251.GA3642@sigill.intra.peff.net>
Hi,
On Thu, Mar 13, 2014 at 4:22 AM, Jeff King <peff@peff.net> wrote:
Show 8 quoted lines
> On Thu, Mar 13, 2014 at 02:51:29AM +0800, Yuxuan Shui wrote:
>
>> Since fsck_ident doesn't change the content of **ident, the type of
>> ident could be const char **.
>
> Unfortunately, const double-pointers in C are a bit tricky, and a
> pointer to "char *" cannot automatically be passed as a pointer to
> "const char *".

Thanks for pointing this out, I split the changes in a wrong way. I'll fix this in next version of this patch.

Show 20 quoted lines
>
> I think you want this on top:
>
> diff --git a/fsck.c b/fsck.c
> index 1789c34..7776660 100644
> --- a/fsck.c
> +++ b/fsck.c
> @@ -281,7 +281,7 @@ static int fsck_ident(const char **ident, struct object *obj, fsck_error error_f
>
>  static int fsck_commit(struct commit *commit, fsck_error error_func)
>  {
> -       char *buffer = commit->buffer;
> +       const char *buffer = commit->buffer;
>         unsigned char tree_sha1[20], sha1[20];
>         struct commit_graft *graft;
>         int parents = 0;
>
> Otherwise, gcc will complain about incompatible pointer types.
>
> -Peff
-- 
Regards
Yuxuan Shui
Previous: Jeff KingNext: Yuxuan Shui
Message 4 of 6 in “GSoC micro project, use skip_prefix() in fsck_commit()”
  1. 0/2 GSoC micro project, use skip_prefix() in fsck_commit()Yuxuan Shui, Mar 12, 2014
  2. 1/2 fsck.c: Change the type of fsck_ident()'s first argumentYuxuan Shui, Mar 12, 2014
  3. Jeff KingMar 12, 2014
  4. Yuxuan ShuiMar 13, 2014
  5. 2/2 fsck.c: Rewrite fsck_commit() to use skip_prefix()Yuxuan Shui, Mar 12, 2014
  6. Junio C HamanoMar 12, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.