mirror of
https://codeberg.org/redict/redict.git
synced 2025-01-23 00:28:26 -05:00
command table size calculated with sizeof
This commit is contained in:
parent
1a132bbc9c
commit
d55d5c5dd3
16
redis.c
16
redis.c
@ -753,7 +753,6 @@ static void unwatchCommand(redisClient *c);
|
|||||||
/* Global vars */
|
/* Global vars */
|
||||||
static struct redisServer server; /* server global state */
|
static struct redisServer server; /* server global state */
|
||||||
static struct redisCommand *commandTable;
|
static struct redisCommand *commandTable;
|
||||||
static unsigned int commandTableSize;
|
|
||||||
static struct redisCommand readonlyCommandTable[] = {
|
static struct redisCommand readonlyCommandTable[] = {
|
||||||
{"get",getCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
|
{"get",getCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
|
||||||
{"set",setCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,0,0,0},
|
{"set",setCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,0,0,0},
|
||||||
@ -862,8 +861,7 @@ static struct redisCommand readonlyCommandTable[] = {
|
|||||||
{"punsubscribe",punsubscribeCommand,-1,REDIS_CMD_INLINE,NULL,0,0,0},
|
{"punsubscribe",punsubscribeCommand,-1,REDIS_CMD_INLINE,NULL,0,0,0},
|
||||||
{"publish",publishCommand,3,REDIS_CMD_BULK|REDIS_CMD_FORCE_REPLICATION,NULL,0,0,0},
|
{"publish",publishCommand,3,REDIS_CMD_BULK|REDIS_CMD_FORCE_REPLICATION,NULL,0,0,0},
|
||||||
{"watch",watchCommand,-2,REDIS_CMD_INLINE,NULL,0,0,0},
|
{"watch",watchCommand,-2,REDIS_CMD_INLINE,NULL,0,0,0},
|
||||||
{"unwatch",unwatchCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
|
{"unwatch",unwatchCommand,1,REDIS_CMD_INLINE,NULL,0,0,0}
|
||||||
{NULL,NULL,0,0,NULL,0,0,0}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/*============================ Utility functions ============================ */
|
/*============================ Utility functions ============================ */
|
||||||
@ -2256,16 +2254,12 @@ static int qsortRedisCommands(const void *r1, const void *r2) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void sortCommandTable() {
|
static void sortCommandTable() {
|
||||||
int i = 0, size = 0;
|
|
||||||
|
|
||||||
/* Determine and store the size of the command table */
|
|
||||||
while(readonlyCommandTable[i++].name != NULL) size++;
|
|
||||||
commandTableSize = size;
|
|
||||||
|
|
||||||
/* Copy and sort the read-only version of the command table */
|
/* Copy and sort the read-only version of the command table */
|
||||||
commandTable = (struct redisCommand*)malloc(sizeof(readonlyCommandTable));
|
commandTable = (struct redisCommand*)malloc(sizeof(readonlyCommandTable));
|
||||||
memcpy(commandTable,readonlyCommandTable,sizeof(readonlyCommandTable));
|
memcpy(commandTable,readonlyCommandTable,sizeof(readonlyCommandTable));
|
||||||
qsort(commandTable,size,sizeof(struct redisCommand),qsortRedisCommands);
|
qsort(commandTable,
|
||||||
|
sizeof(readonlyCommandTable)/sizeof(struct redisCommand),
|
||||||
|
sizeof(struct redisCommand),qsortRedisCommands);
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct redisCommand *lookupCommand(char *name) {
|
static struct redisCommand *lookupCommand(char *name) {
|
||||||
@ -2273,7 +2267,7 @@ static struct redisCommand *lookupCommand(char *name) {
|
|||||||
return bsearch(
|
return bsearch(
|
||||||
&tmp,
|
&tmp,
|
||||||
commandTable,
|
commandTable,
|
||||||
commandTableSize,
|
sizeof(readonlyCommandTable)/sizeof(struct redisCommand),
|
||||||
sizeof(struct redisCommand),
|
sizeof(struct redisCommand),
|
||||||
qsortRedisCommands);
|
qsortRedisCommands);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user