diff options
author | Shawn O. Pearce <spearce@spearce.org> | 2008-12-30 22:07:56 -0800 |
---|---|---|
committer | Shawn O. Pearce <spearce@spearce.org> | 2008-12-30 22:07:56 -0800 |
commit | 064301cc3528ec3bccd07dafe9af824d87a50dba (patch) | |
tree | 1554ef7957dd89f4d94f00dfbcf7989d3a409306 | |
parent | a1d34bc000cee6d72c3b5e329faa58424641611f (diff) | |
download | libgit2-064301cc3528ec3bccd07dafe9af824d87a50dba.tar.gz |
Fix size_t snprintf warning by using PRIuPTR format macro
This is the correct C99 format code for the size_t type when passed
as an argument to the *printf family. If the platform doesn't
define it, we assume %lu and just cross our fingers that its the
proper setting for a size_t on this system. On most sane platforms,
"unsigned long" is the underlying type of "size_t".
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
-rw-r--r-- | src/common.h | 5 | ||||
-rw-r--r-- | src/odb.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/common.h b/src/common.h index d17bf1cee..3d1f0e581 100644 --- a/src/common.h +++ b/src/common.h @@ -8,12 +8,17 @@ #ifdef GIT_HAS_PTHREAD # include <pthread.h> #endif +#include <inttypes.h> #include <assert.h> #include <errno.h> #include <stdlib.h> #include <unistd.h> #include <string.h> +#ifndef PRIuPTR +# define PRIuPTR "lu" +#endif + #include "git/common.h" #define GIT_PATH_MAX 4096 @@ -88,7 +88,7 @@ int git_obj__loose_object_type(git_otype type) static int format_object_header(char *hdr, size_t n, git_obj *obj) { const char *type_str = git_obj_type_to_string(obj->type); - int len = snprintf(hdr, n, "%s %u", type_str, obj->len); + int len = snprintf(hdr, n, "%s %" PRIuPTR, type_str, obj->len); assert(len > 0); /* otherwise snprintf() is broken */ assert(len < n); /* otherwise the caller is broken! */ |