mirror of
https://github.com/fluencelabs/redis
synced 2025-06-12 08:41:21 +00:00
Convert objects in the command procs instead of the protocol code
This commit is contained in:
@ -392,12 +392,14 @@ void zaddGenericCommand(redisClient *c, robj *key, robj *ele, double score, int
|
||||
void zaddCommand(redisClient *c) {
|
||||
double scoreval;
|
||||
if (getDoubleFromObjectOrReply(c,c->argv[2],&scoreval,NULL) != REDIS_OK) return;
|
||||
c->argv[3] = tryObjectEncoding(c->argv[3]);
|
||||
zaddGenericCommand(c,c->argv[1],c->argv[3],scoreval,0);
|
||||
}
|
||||
|
||||
void zincrbyCommand(redisClient *c) {
|
||||
double scoreval;
|
||||
if (getDoubleFromObjectOrReply(c,c->argv[2],&scoreval,NULL) != REDIS_OK) return;
|
||||
c->argv[3] = tryObjectEncoding(c->argv[3]);
|
||||
zaddGenericCommand(c,c->argv[1],c->argv[3],scoreval,1);
|
||||
}
|
||||
|
||||
@ -412,6 +414,7 @@ void zremCommand(redisClient *c) {
|
||||
checkType(c,zsetobj,REDIS_ZSET)) return;
|
||||
|
||||
zs = zsetobj->ptr;
|
||||
c->argv[2] = tryObjectEncoding(c->argv[2]);
|
||||
de = dictFind(zs->dict,c->argv[2]);
|
||||
if (de == NULL) {
|
||||
addReply(c,shared.czero);
|
||||
@ -921,6 +924,7 @@ void zscoreCommand(redisClient *c) {
|
||||
checkType(c,o,REDIS_ZSET)) return;
|
||||
|
||||
zs = o->ptr;
|
||||
c->argv[2] = tryObjectEncoding(c->argv[2]);
|
||||
de = dictFind(zs->dict,c->argv[2]);
|
||||
if (!de) {
|
||||
addReply(c,shared.nullbulk);
|
||||
@ -944,6 +948,7 @@ void zrankGenericCommand(redisClient *c, int reverse) {
|
||||
|
||||
zs = o->ptr;
|
||||
zsl = zs->zsl;
|
||||
c->argv[2] = tryObjectEncoding(c->argv[2]);
|
||||
de = dictFind(zs->dict,c->argv[2]);
|
||||
if (!de) {
|
||||
addReply(c,shared.nullbulk);
|
||||
|
Reference in New Issue
Block a user