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 *". 

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.

To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to