[PATCH] tempname: fix int precision warnings

Mike Frysinger vapier at gentoo.org
Tue Feb 22 02:30:58 UTC 2011


The printf precision takes an integer, not a size_t.  Otherwise we get:

libc/misc/internals/tempname.c: In function '___path_search':
libc/misc/internals/tempname.c:116: warning:
	field precision should have type 'int', but argument 3 has type 'size_t'
	field precision should have type 'int', but argument 5 has type 'size_t'

Signed-off-by: Mike Frysinger <vapier at gentoo.org>
---
 libc/misc/internals/tempname.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/libc/misc/internals/tempname.c b/libc/misc/internals/tempname.c
index 4145c94..0db2845 100644
--- a/libc/misc/internals/tempname.c
+++ b/libc/misc/internals/tempname.c
@@ -62,7 +62,10 @@ int attribute_hidden ___path_search (char *tmpl, size_t tmpl_len, const char *di
 	const char *pfx /*, int try_tmpdir*/)
 {
     /*const char *d; */
-    size_t dlen, plen;
+    /* dir and pfx lengths should always fit into an int,
+       so don't bother using size_t here.  Especially since
+       the printf func requires an int for precision (%*s).  */
+    int dlen, plen;
 
     if (!pfx || !pfx[0])
     {
-- 
1.7.4.1



More information about the uClibc mailing list