[bugs:#2730] More memory leaks in backend/cimxml/grammer.c
diff --git a/backend/cimxml/grammar.c b/backend/cimxml/grammar.c
index 9e543c9..ac1b4e4 100644
--- a/backend/cimxml/grammar.c
+++ b/backend/cimxml/grammar.c
@@ -444,6 +444,7 @@
className(parm, (parseUnion*)&lvalp.xtokClassName);
op = newCMPIObjectPath(NULL, lvalp.xtokClassName.value, NULL);
simpleArrayAdd(parm->respHdr.rvArray,(CMPIValue*)&op,CMPI_ref);
+ if(op) op->ft->release(op);
ct = localLex(&lvalp, parm);
}
while(ct == XTOK_CLASSNAME);
@@ -467,6 +468,7 @@
instanceName(parm, (parseUnion*)&lvalp.xtokInstanceName);
createPath(&op, &lvalp.xtokInstanceName);
simpleArrayAdd(parm->respHdr.rvArray,(CMPIValue*)&op,CMPI_ref);
+ if(op) op->ft->release(op);
ct = localLex(&lvalp, parm);
}
while(ct == XTOK_INSTANCENAME);
@@ -482,6 +484,7 @@
//setInstQualifiers(inst, &lvalp.xtokNamedInstance.instance.qualifiers);
setInstProperties(inst, &lvalp.xtokNamedInstance.instance.properties);
simpleArrayAdd(parm->respHdr.rvArray,(CMPIValue*)&inst,CMPI_instance);
+ if(op) op->ft->release(op);
ct = localLex(&lvalp, parm);
}
while(ct == XTOK_VALUENAMEDINSTANCE);
@@ -495,6 +498,7 @@
CMSetNameSpace(op, lvalp.xtokObjectPath.path.path.nameSpacePath.value);
CMSetHostname(op, lvalp.xtokObjectPath.path.path.host.host);
simpleArrayAdd(parm->respHdr.rvArray,(CMPIValue*)&op,CMPI_ref);
+ if(op) op->ft->release(op);
ct = localLex(&lvalp, parm);
}
while(ct == XTOK_OBJECTPATH);