diff options
author | antirez <antirez@gmail.com> | 2015-06-27 09:43:47 +0200 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2015-06-27 09:43:47 +0200 |
commit | cd91beea1c11a37be9811260c16dfe8eb8e57e9e (patch) | |
tree | e664f22bcbe0f4c88fa88f710122c088bf73fc1c /src/geo.c | |
parent | 710c05ac2ab0eedc56cc19ba16ad8fc40d24e81d (diff) | |
download | redis-cd91beea1c11a37be9811260c16dfe8eb8e57e9e.tar.gz |
Geo: only one way to specify any given option.
Diffstat (limited to 'src/geo.c')
-rw-r--r-- | src/geo.c | 13 |
1 files changed, 7 insertions, 6 deletions
@@ -413,6 +413,7 @@ void geoAddCommand(redisClient *c) { #define RADIUS_MEMBER 2 /* GEORADIUS key x y radius unit [WITHDIST] [WITHHASH] [WITHCOORD] [ASC|DESC] + * [LIMIT count] * GEORADIUSBYMEMBER key member radius unit ... options ... */ static void geoRadiusGeneric(redisClient *c, int type) { robj *key = c->argv[1]; @@ -457,17 +458,17 @@ static void geoRadiusGeneric(redisClient *c, int type) { int remaining = c->argc - base_args; for (int i = 0; i < remaining; i++) { char *arg = c->argv[base_args + i]->ptr; - if (!strncasecmp(arg, "withdist", 8)) + if (!strcasecmp(arg, "withdist")) { withdist = 1; - else if (!strcasecmp(arg, "withhash")) + } else if (!strcasecmp(arg, "withhash")) { withhash = 1; - else if (!strncasecmp(arg, "withcoord", 9)) + } else if (!strcasecmp(arg, "withcoord")) { withcoords = 1; - else if (!strncasecmp(arg, "asc", 3)) + } else if (!strcasecmp(arg, "asc")) { sort = SORT_ASC; - else if (!strncasecmp(arg, "desc", 4)) + } else if (!strcasecmp(arg, "desc")) { sort = SORT_DESC; - else { + } else { addReply(c, shared.syntaxerr); return; } |