From: Chris B. <buc...@us...> - 2012-03-01 21:20:43
|
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 "SFCB - Small Footprint CIM Broker". The branch, master has been updated via b6ad6f083b0aaa8a3885275107a657959405ce5e (commit) from 74cc8e1c1a06715cc771969683cbfb98276c0539 (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 b6ad6f083b0aaa8a3885275107a657959405ce5e Author: buccella <buc...@li...> Date: Thu Mar 1 16:21:12 2012 -0500 [ 3496061 ] IndicationSubscription May Be Undeletable ----------------------------------------------------------------------- Summary of changes: diff --git a/ChangeLog b/ChangeLog index e047138..a8a5eaa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-03-01 Chris Buccella <buc...@li...> + + * interopProvider.c: + [ 3496061 ] IndicationSubscription May Be Undeletable + 2012-02-29 Chris Buccella <buc...@li...> * providerMgr.c: diff --git a/NEWS b/NEWS index 724f91a..db66482 100644 --- a/NEWS +++ b/NEWS @@ -103,6 +103,7 @@ Bugs Fixed: - 3495806 isChild() can cause a provider mismatch - 3495343 Bad pointer references in trace statements - 3495801 Correction to 3495343 +- 3496061 IndicationSubscription May Be Undeletable Changes in 1.3.13 ================= diff --git a/interopProvider.c b/interopProvider.c index cf6b94c..096933f 100644 --- a/interopProvider.c +++ b/interopProvider.c @@ -764,12 +764,19 @@ initInterOp(const CMPIBroker * broker, const CMPIContext *ctx) enm = _broker->bft->enumerateInstances(_broker, ctxLocal, op, NULL, &st); if (enm) { + CMPIStatus st; while (enm->ft->hasNext(enm, &st) && (ci = (enm->ft->getNext(enm, &st)).value.inst)) { CMPIObjectPath *hop; cop = CMGetObjectPath(ci, &st); hop = CMGetKey(cop, "handler", NULL).value.ref; - processSubscription(broker, ctx, ci, cop); + st = processSubscription(broker,ctx,ci,cop); + /* if the on-disk repo is modified between startups, it is + possible for a subscription instance to exist w/o a filter or + handler. Clean out the useless sub if this is the case */ + if (st.rc == CMPI_RC_ERR_NOT_FOUND) { + CBDeleteInstance(_broker, ctxLocal, cop); + } } CMRelease(enm); } hooks/post-receive -- SFCB - Small Footprint CIM Broker |