threads / patch / 4555

patch, 3 partsgit-tar-tree: no more void pointer arithmetic

Subject: [PATCH 3/3] git-tar-tree: no more void pointer arithmetic

## tl;dr

One message between Jun 18, 2006 and Jun 18, 2006. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Rene Scharfe· Jun 18, 2006, 10:58 UTC · lore

Noticed by Florian Forster: Use a char pointer when adding offsets, because void pointer arithmetic is a GNU extension. Const'ify the function arguments while we're at it.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
---
 builtin-tar-tree.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)
Show changes to builtin-tar-tree.c +5 −2
diff --git a/builtin-tar-tree.c b/builtin-tar-tree.c
index f646c5b..03dd8be 100644
--- a/builtin-tar-tree.c
+++ b/builtin-tar-tree.c
@@ -22,8 +22,10 @@ static unsigned long offset;
 static time_t archive_time;
 
 /* tries hard to write, either succeeds or dies in the attempt */
-static void reliable_write(void *buf, unsigned long size)
+static void reliable_write(const void *data, unsigned long size)
 {
+	const char *buf = data;
+
 	while (size > 0) {
 		long ret = xwrite(1, buf, size);
 		if (ret < 0) {
@@ -51,8 +53,9 @@ static void write_if_needed(void)
  * queues up writes, so that all our write(2) calls write exactly one
  * full block; pads writes to RECORDSIZE
  */
-static void write_blocked(void *buf, unsigned long size)
+static void write_blocked(const void *data, unsigned long size)
 {
+	const char *buf = data;
 	unsigned long tail;
 
 	if (offset) {
-- 
1.4.0

← back to recent threads