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

[PATCH] http: fix some printf format warnings on 32-bit builds

From
Ramsay Jones <ramsay@ramsayjones.plus.com>
Date
Nov 11, 2015, 00:23 UTC
Message-ID
<56428A6A.5010406@ramsayjones.plus.com>

Commit f8117f55 ("http: use off_t to store partial file size", 02-11-2015) changed the type of some variables from long to off_t. The 32-bit build, which enables the large filesystem interface (_FILE_OFFSET_BITS == 64), defines the off_t type as a 64-bit integer, whereas long is a 32-bit integer. This results in a couple of printf format warnings.

In order to suppress the warnings, change the format specifier to use the PRIuMAX macro and cast the off_t argument to uintmax_t. (See also the http_opt_request_remainder() function, which uses the same solution).

Signed-off-by: Ramsay Jones <ramsay@ramsayjones.plus.com>
---
Hi Jeff,

I don't compile on 32-bit as often as I did in the past, otherwise I would have noticed this sooner. :(

ATB, Ramsay Jones

 http.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/http.c b/http.c
index 42f29ce..2532976 100644
--- a/http.c
+++ b/http.c
@@ -1617,8 +1617,8 @@ struct http_pack_request *new_http_pack_request(
 	if (prev_posn>0) {
 		if (http_is_verbose)
 			fprintf(stderr,
-				"Resuming fetch of pack %s at byte %ld\n",
-				sha1_to_hex(target->sha1), prev_posn);
+				"Resuming fetch of pack %s at byte %"PRIuMAX"\n",
+				sha1_to_hex(target->sha1), (uintmax_t)prev_posn);
 		http_opt_request_remainder(preq->slot->curl, prev_posn);
 	}
 
@@ -1772,8 +1772,8 @@ struct http_object_request *new_http_object_request(const char *base_url,
 	if (prev_posn>0) {
 		if (http_is_verbose)
 			fprintf(stderr,
-				"Resuming fetch of object %s at byte %ld\n",
-				hex, prev_posn);
+				"Resuming fetch of object %s at byte %"PRIuMAX"\n",
+				hex, (uintmax_t)prev_posn);
 		http_opt_request_remainder(freq->slot->curl, prev_posn);
 	}
 
-- 
2.6.0
Next: Eric Sunshine
Message 1 of 19 in “http: fix some printf format warnings on 32-bit builds”
  1. http: fix some printf format warnings on 32-bit buildsRamsay Jones, Nov 11, 2015
  2. Eric SunshineNov 11, 2015
  3. Stefan BellerNov 11, 2015
  4. Lars SchneiderNov 11, 2015
  5. Stefan BellerNov 11, 2015
  6. Ramsay JonesNov 11, 2015
  7. Lars SchneiderNov 13, 2015
  8. Eric SunshineNov 13, 2015
  9. Torsten BögershausenNov 13, 2015
  10. Lars SchneiderNov 13, 2015
  11. Ramsay JonesNov 13, 2015
  12. Lars SchneiderNov 14, 2015
  13. Ramsay JonesNov 11, 2015
  14. Eric SunshineNov 11, 2015
  15. Jeff KingNov 11, 2015
  16. Ramsay JonesNov 11, 2015
  17. Torsten BögershausenNov 12, 2015
  18. Ramsay JonesNov 12, 2015
  19. Andreas SchwabNov 12, 2015

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.