Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
fast-import.c: stricter strtoul check, silence compiler warning
author
René Scharfe
<rene.scharfe@lsrfire.ath.cx>
Sun, 21 Dec 2008 01:28:48 +0000
(
02:28
+0100)
committer
Junio C Hamano
<gitster@pobox.com>
Sun, 21 Dec 2008 09:48:26 +0000
(
01:48
-0800)
Store the return value of strtoul() in order to avoid compiler
warnings on Ubuntu 8.10.
Also check errno after each call, which is the only way to notice
an overflow without making ULONG_MAX an illegal date.
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
fast-import.c
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
8f14825
)
diff --git
a/fast-import.c
b/fast-import.c
index 171d1783399c970136d55cf86fdb78b5c4edce65..a6bce661963812691503116e8d61d9ef90f96526 100644
(file)
--- a/
fast-import.c
+++ b/
fast-import.c
@@
-1748,9
+1748,12
@@
static int validate_raw_date(const char *src, char *result, int maxlen)
{
const char *orig_src = src;
char *endp, sign;
{
const char *orig_src = src;
char *endp, sign;
+ unsigned long date;
- strtoul(src, &endp, 10);
- if (endp == src || *endp != ' ')
+ errno = 0;
+
+ date = strtoul(src, &endp, 10);
+ if (errno || endp == src || *endp != ' ')
return -1;
src = endp + 1;
return -1;
src = endp + 1;
@@
-1758,8
+1761,8
@@
static int validate_raw_date(const char *src, char *result, int maxlen)
return -1;
sign = *src;
return -1;
sign = *src;
- strtoul(src + 1, &endp, 10);
- if (endp == src || *endp || (endp - orig_src) >= maxlen)
+
date =
strtoul(src + 1, &endp, 10);
+ if (e
rrno || e
ndp == src || *endp || (endp - orig_src) >= maxlen)
return -1;
strcpy(result, orig_src);
return -1;
strcpy(result, orig_src);