summaryrefslogtreecommitdiff
path: root/src/geo.c
diff options
context:
space:
mode:
authorantirez <antirez@gmail.com>2015-06-27 09:43:47 +0200
committerantirez <antirez@gmail.com>2015-06-27 09:43:47 +0200
commitcd91beea1c11a37be9811260c16dfe8eb8e57e9e (patch)
treee664f22bcbe0f4c88fa88f710122c088bf73fc1c /src/geo.c
parent710c05ac2ab0eedc56cc19ba16ad8fc40d24e81d (diff)
downloadredis-cd91beea1c11a37be9811260c16dfe8eb8e57e9e.tar.gz
Geo: only one way to specify any given option.
Diffstat (limited to 'src/geo.c')
-rw-r--r--src/geo.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/geo.c b/src/geo.c
index 72dadb885..1a90fa87b 100644
--- a/src/geo.c
+++ b/src/geo.c
@@ -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;
}