From 912b9165a95bdf382052d409737e4ab5bc3f07fb Mon Sep 17 00:00:00 2001 From: Pieter Noordhuis Date: Wed, 3 Mar 2010 18:40:42 +0100 Subject: [PATCH] rank is very unlikely to overflow integer range --- redis.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/redis.c b/redis.c index f750ca681..456596dae 100644 --- a/redis.c +++ b/redis.c @@ -456,7 +456,7 @@ typedef struct _redisSortOperation { typedef struct zskiplistNode { struct zskiplistNode **forward; struct zskiplistNode *backward; - unsigned long *span; + unsigned int *span; double score; robj *obj; } zskiplistNode; @@ -4798,7 +4798,7 @@ static zskiplistNode *zslCreateNode(int level, double score, robj *obj) { zskiplistNode *zn = zmalloc(sizeof(*zn)); zn->forward = zmalloc(sizeof(zskiplistNode*) * level); - zn->span = zmalloc(sizeof(unsigned long) * level); + zn->span = zmalloc(sizeof(unsigned int) * level); zn->score = score; zn->obj = obj; return zn; @@ -4851,7 +4851,7 @@ static int zslRandomLevel(void) { static void zslInsert(zskiplist *zsl, double score, robj *obj) { zskiplistNode *update[ZSKIPLIST_MAXLEVEL], *x; - unsigned long span[ZSKIPLIST_MAXLEVEL]; + unsigned int span[ZSKIPLIST_MAXLEVEL]; int i, level; x = zsl->header; @@ -5434,7 +5434,7 @@ static void zrankCommand(redisClient *c) { double *score = dictGetEntryVal(de); zskiplistNode *x; - unsigned long rank = 0; + unsigned int rank = 0; int i; x = zsl->header;