Fix 'resource leak' defects found by Coverity version 6.5.1:
Resource leak (RESOURCE_LEAK)
Variable going out of scope leaks the storage it points to.
Signed-off-by: Sebastien Buisson <sebastien.buisson@bull.net>
Change-Id: I12312b081ea735118d5375c0dc9c20ead5ed9286
Reviewed-on: http://review.whamcloud.com/5918
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: John Hammond <johnlockwoodhammond@gmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
OBD_ALLOC_PTR(ss->ss_client_seq);
if (ss->ss_client_seq == NULL)
- GOTO(out_free, -ENOMEM);
+ GOTO(out_free, rc = -ENOMEM);
snprintf(name, strlen(obd_name) + 6, "%p-super", obd_name);
rc = seq_client_init(ss->ss_client_seq, NULL, LUSTRE_SEQ_DATA,
sprintf(key, "d%d", i);
rc = osd_oi_find_or_create(env, osd, odb, key, &sdb);
if (rc)
- GOTO(out, osd_seq = ERR_PTR(rc));
+ GOTO(out, rc);
osd_seq->os_compat_dirs[i] = sdb;
}
OBD_ALLOC(cli->cl_rpc_lock, sizeof(*cli->cl_rpc_lock));
if (!cli->cl_rpc_lock)
- RETURN(-ENOMEM);
+ GOTO(out_fini, rc = -ENOMEM);
osp_init_rpc_lock(cli->cl_rpc_lock);
}