Utils: Include stdint.h and fix signess in sdigits10().

This commit is contained in:
antirez 2015-02-27 16:01:45 +01:00
parent 084a59c324
commit 0e5e8ca9e6
2 changed files with 2 additions and 1 deletions

View File

@ -256,7 +256,7 @@ uint32_t sdigits10(int64_t v) {
if (v < 0) { if (v < 0) {
/* Abs value of LLONG_MIN requires special handling. */ /* Abs value of LLONG_MIN requires special handling. */
uint64_t uv = (v != LLONG_MIN) ? uint64_t uv = (v != LLONG_MIN) ?
-v : ((uint64_t) LLONG_MAX)+1; (uint64_t)-v : ((uint64_t) LLONG_MAX)+1;
return digits10(uv)+1; /* +1 for the minus. */ return digits10(uv)+1; /* +1 for the minus. */
} else { } else {
return digits10(v); return digits10(v);

View File

@ -30,6 +30,7 @@
#ifndef __REDIS_UTIL_H #ifndef __REDIS_UTIL_H
#define __REDIS_UTIL_H #define __REDIS_UTIL_H
#include <stdint.h>
#include "sds.h" #include "sds.h"
int stringmatchlen(const char *p, int plen, const char *s, int slen, int nocase); int stringmatchlen(const char *p, int plen, const char *s, int slen, int nocase);