From: Chris B. <buc...@us...> - 2013-09-18 01:28:31
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "sfcc- Small Footprint CIM Client". The branch, master has been updated via 24972ce7c2858179578e7a38fe6f526aae82979b (commit) from b732c86a2dc5083524ebc52593310771fe5c31c2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 24972ce7c2858179578e7a38fe6f526aae82979b Author: buccella <buc...@li...> Date: Tue Sep 17 21:27:47 2013 -0400 [bugs:#2663] sfcc cannot reconnect with sfcb if sfcb restarts ----------------------------------------------------------------------- Summary of changes: backend/cimxml/client.c | 7 ++++--- cimc/cimcclient.c | 8 +++++++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/backend/cimxml/client.c b/backend/cimxml/client.c index e076544..9fa93b3 100644 --- a/backend/cimxml/client.c +++ b/backend/cimxml/client.c @@ -304,6 +304,8 @@ static CMPIStatus releaseConnection(CMCIConnection *con) if (con->mStatus.msg) CMRelease(con->mStatus.msg); free(con); + con = NULL; + return rc; } /* --------------------------------------------------------------------------*/ @@ -990,8 +992,9 @@ static CMPIStatus releaseClient(CMCIClient * mb) } if (cl->connection) CMRelease(cl->connection); - free(cl); + cl = NULL; + return rc; } @@ -2893,8 +2896,6 @@ static void *releaseEnv(CIMCEnv *env) curl_global_cleanup(); } - free(env); - return NULL; } diff --git a/cimc/cimcclient.c b/cimc/cimcclient.c index 320afbd..a2fb6d3 100644 --- a/cimc/cimcclient.c +++ b/cimc/cimcclient.c @@ -99,9 +99,15 @@ void ReleaseCIMCEnv(CIMCEnv *env) void *lib=NULL; if (env) { lib = env->hdl; - env->ft->release(env); + void* check = env->ft->release(env); if (lib) { dlclose(lib); } + + /* if check is for compatability: + SFCB pre-1.4.6 free'd the env during release() and returned lib pointer */ + if (!check) { + free(env); + } } } hooks/post-receive -- sfcc- Small Footprint CIM Client |