Thread (5 messages) flat view 5 messages, 2 authors, 2016-06-15

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

From: Jeff King <hidden>
Date: 2016-06-15 23:00:18
Subsystem: the rest · Maintainer: Linus Torvalds

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.

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help