|
From: Dave H. <hel...@us...> - 2012-07-20 14:10:46
|
Update of /cvsroot/sblim/sfcb
In directory vz-cvs-3.sog:/tmp/cvs-serv1506
Modified Files:
ChangeLog NEWS classProviderGz.c
Log Message:
Fixed 3527714: Every other EnumerateClasses fails
Index: NEWS
===================================================================
RCS file: /cvsroot/sblim/sfcb/NEWS,v
retrieving revision 1.709
retrieving revision 1.710
diff -u -d -r1.709 -r1.710
--- NEWS 19 Jul 2012 17:21:22 -0000 1.709
+++ NEWS 20 Jul 2012 14:10:43 -0000 1.710
@@ -10,6 +10,7 @@
- 3539555 Memory leak in TestInstanceProvider
- 1901737 Memory leak in internalProvider.c
- 3539006 Possible indication deadlock
+- 3527714 Every other EnumerateClasses fails
Changes in 1.3.15
=================
Index: classProviderGz.c
===================================================================
RCS file: /cvsroot/sblim/sfcb/classProviderGz.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- classProviderGz.c 17 Dec 2009 20:15:48 -0000 1.20
+++ classProviderGz.c 20 Jul 2012 14:10:43 -0000 1.21
@@ -60,7 +60,7 @@
void (*release) (ClassRegister * br);
ClassRegister *(*clone) (ClassRegister * br);
- CMPIConstClass *(*getClass) (ClassRegister * br, const char *clsName, void **id);
+ CMPIConstClass *(*getClass) (ClassRegister * br, const char *clsName);
int (*putClass) (ClassRegister * br, const char *className, ClassRecord * cls);
void (*removeClass) (ClassRegister * br, const char *className);
void (*releaseClass) (ClassRegister *br, void *id);
@@ -85,7 +85,7 @@
extern Class_Register_FT *ClassRegisterFT;
-static CMPIConstClass *getClass(ClassRegister * cr, const char *clsName, void **id);
+static CMPIConstClass *getClass(ClassRegister * cr, const char *clsName);
int traverseChildren(ClassRegister *cReg, const char *parent, const char *child);
static int nsBaseLen;
@@ -478,7 +478,7 @@
}
-static CMPIConstClass *getClass(ClassRegister * cr, const char *clsName, void **id)
+static CMPIConstClass *getClass(ClassRegister * cr, const char *clsName)
{
ClassRecord *crec;
int r;
@@ -639,7 +639,7 @@
}
}
} else {
- CMPIConstClass *cls = getClass(cReg,cn,NULL);
+ CMPIConstClass *cls = getClass(cReg,cn);
if (cls == NULL) {
st.rc = CMPI_RC_ERR_INVALID_CLASS;
} else if ((flgs & CMPI_FLAG_DeepInheritance)==0) {
@@ -664,12 +664,10 @@
{
UtilList *ul = getChildren(cReg,cn);
char *child;
- void *cid;
if (ul) for (child = (char *) ul->ft->getFirst(ul); child; child = (char *) ul->ft->getNext(ul)) {
- CMPIConstClass *cl = getClass(cReg,child,&cid);
+ CMPIConstClass *cl = getClass(cReg,child);
CMReturnInstance(rslt, (CMPIInstance *) cl);
- if (cid==NULL) CMRelease(cl);
loopOnChildren(cReg,child,rslt);
}
}
@@ -722,16 +720,15 @@
if(cid == NULL) CMRelease(cls);
}
} else {
- cls = getClass(cReg,cn,NULL);
+ cls = getClass(cReg,cn);
if (cls == NULL) {
st.rc = CMPI_RC_ERR_INVALID_CLASS;
} else if ((flgs & CMPI_FLAG_DeepInheritance)==0) {
UtilList *ul = getChildren(cReg,cn);
char *child;
if (ul) for (child = (char *) ul->ft->getFirst(ul); child; child = (char *) ul->ft->getNext(ul)) {
- cls = getClass(cReg,child,&cid);
+ cls = getClass(cReg,child);
CMReturnInstance(rslt, (CMPIInstance *) cls);
- if (cid==NULL) CMRelease(cls);
}
} else if (cn && (flgs & CMPI_FLAG_DeepInheritance)) {
loopOnChildren(cReg, cn, rslt);
@@ -754,7 +751,6 @@
CMPIConstClass *cl, *clLocal;
ClassRegister *cReg;
int rc;
- void *cid;
_SFCB_ENTER(TRACE_PROVIDERS, "ClassProviderGetClass");
_SFCB_TRACE(1,("--- ClassName=\"%s\"",(char *) cn->hdl));
@@ -769,7 +765,7 @@
/* Make a cloned copy of the cached results to prevent
thread interference. */
- clLocal = getClass(cReg, (char *) cn->hdl,&cid);
+ clLocal = getClass(cReg, (char *) cn->hdl);
if (clLocal) {
_SFCB_TRACE(1,("--- Class found"));
@@ -821,8 +817,7 @@
static int repCandidate(ClassRegister *cReg, char *cn)
{
- void *cid;
- CMPIConstClass *cl = getClass(cReg,cn,&cid);
+ CMPIConstClass *cl = getClass(cReg,cn);
if (isAbstract(cl)) return 0;
ProviderInfo *info;
@@ -836,7 +831,7 @@
if (info) _SFCB_RETURN(0);
cn = (char*)cl->ft->getCharSuperClassName(cl);
if (cn==NULL) break;
- cl = getClass(cReg,cn,&cid);
+ cl = getClass(cReg,cn);
}
_SFCB_RETURN(1);
}
Index: ChangeLog
===================================================================
RCS file: /cvsroot/sblim/sfcb/ChangeLog,v
retrieving revision 1.794
retrieving revision 1.795
diff -u -d -r1.794 -r1.795
--- ChangeLog 19 Jul 2012 17:21:22 -0000 1.794
+++ ChangeLog 20 Jul 2012 14:10:43 -0000 1.795
@@ -1,10 +1,14 @@
+2012-07-20 Dave Heller <hel...@us...>
+
+ * classProviderGz.c:
+ [ 3527714 ] Every other EnumerateClasses fails
+
2012-07-19 Michael Chase-Salerno <br...@li...>
* brokerUpc.c, indCIMXMLExport.c, indCIMXMLHandler.c, interopProvider.c,
support.c, support.h:
[ 3539006 ] Possible indication deadlock
-
2012-07-10 Michael Chase-Salerno <br...@li...>
* test/stageschema.sh:
|