diff options
author | Steve Bennett <steveb@workware.net.au> | 2020-12-14 08:03:27 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2020-12-14 08:07:27 +1000 |
commit | d296f2f7cd5f4f0168e9c80c19ba499a4595c6fa (patch) | |
tree | 28fbec4d9fe5093a086958e9ff896b22b97e117b | |
parent | 6b287b9c6b6ec8fbc62f1cbaad48547cf5a4b65c (diff) | |
download | jimtcl-d296f2f7cd5f4f0168e9c80c19ba499a4595c6fa.zip jimtcl-d296f2f7cd5f4f0168e9c80c19ba499a4595c6fa.tar.gz jimtcl-d296f2f7cd5f4f0168e9c80c19ba499a4595c6fa.tar.bz2 |
redis: Check for error on NULL reply
A command may return NULL, but set an error (e.g. Server closed the connection).
In this case, make sure to return the error.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
-rw-r--r-- | jim-redis.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/jim-redis.c b/jim-redis.c index d1e9457..8722e9f 100644 --- a/jim-redis.c +++ b/jim-redis.c @@ -95,11 +95,14 @@ static int jim_redis_subcmd(Jim_Interp *interp, int argc, Jim_Obj *const *argv) if (reply) { Jim_SetResult(interp, jim_redis_get_result(interp, reply)); if (reply->type == REDIS_REPLY_ERROR) { - /*Jim_SetResultFormatted(interp, "%#s %#s: %#s", argv[0], argv[1], Jim_GetResult(interp));*/ ret = JIM_ERR; } freeReplyObject(reply); } + else if (c->err) { + Jim_SetResultFormatted(interp, "%#s: %s", argv[1], c->errstr); + ret = JIM_ERR; + } return ret; } |