diff options
author | Pieter Noordhuis <pcnoordhuis@gmail.com> | 2011-03-06 20:46:40 +0100 |
---|---|---|
committer | Pieter Noordhuis <pcnoordhuis@gmail.com> | 2011-03-06 20:46:49 +0100 |
commit | 96e34b3ce11e4cda35b9127b6a75756fb42f12ba (patch) | |
tree | ddcdaf8fccdd42a73364a2ae0e8d02d223163b10 /src/redis-cli.c | |
parent | 33753a732a492cfb2cabb0875b33728d62dd1bbe (diff) | |
download | redis-96e34b3ce11e4cda35b9127b6a75756fb42f12ba.tar.gz |
Store SELECTed database for reconnect (issue #468)
Diffstat (limited to 'src/redis-cli.c')
-rw-r--r-- | src/redis-cli.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/redis-cli.c b/src/redis-cli.c index e19a555f4..fc2d4d732 100644 --- a/src/redis-cli.c +++ b/src/redis-cli.c @@ -263,11 +263,9 @@ static int cliAuth() { /* Send SELECT dbnum to the server */ static int cliSelect() { redisReply *reply; - char dbnum[16]; if (config.dbnum == 0) return REDIS_OK; - snprintf(dbnum,sizeof(dbnum),"%d",config.dbnum); - reply = redisCommand(context,"SELECT %s",dbnum); + reply = redisCommand(context,"SELECT %d",config.dbnum); if (reply != NULL) { freeReplyObject(reply); return REDIS_OK; @@ -491,6 +489,10 @@ static int cliSendCommand(int argc, char **argv, int repeat) { if (cliReadReply(output_raw) != REDIS_OK) { free(argvlen); return REDIS_ERR; + } else { + /* Store database number when SELECT was successfully executed. */ + if (!strcasecmp(command,"select") && argc == 2) + config.dbnum = atoi(argv[1]); } } |