diff options
Diffstat (limited to 'rpc/rpc-lib/src/rpc-drc.c')
-rw-r--r-- | rpc/rpc-lib/src/rpc-drc.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/rpc/rpc-lib/src/rpc-drc.c b/rpc/rpc-lib/src/rpc-drc.c index 6adadd85b0e..036b215e0c0 100644 --- a/rpc/rpc-lib/src/rpc-drc.c +++ b/rpc/rpc-lib/src/rpc-drc.c @@ -462,14 +462,14 @@ rpcsvc_add_op_to_cache (rpcsvc_drc_globals_t *drc, drc_cached_op_t *reply) rpcsvc_vacate_drc_entries (drc); tmp_reply = (drc_cached_op_t **)rb_probe (client->rbtree, reply); - if (*tmp_reply != reply) { + if (!tmp_reply) { + /* mem alloc failed */ + return -1; + } else if (*tmp_reply != reply) { /* should never happen */ gf_log (GF_RPCSVC, GF_LOG_ERROR, "DRC failed to detect duplicates"); return -1; - } else if (*tmp_reply == NULL) { - /* mem alloc failed */ - return -1; } client->op_count++; |