File 0001-Don-t-release-op-when-used-as-value.patch of Package sblim-sfcc
From 125be1ef84ac1f68613e1747914dfafaa516ade0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <kkaempf@suse.de>
Date: Fri, 20 Jun 2014 12:41:52 +0200
Subject: [PATCH] Don't release op when used as value
---
backend/cimxml/grammar.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/backend/cimxml/grammar.c b/backend/cimxml/grammar.c
index ac1b4e467268..6a0a969f64d4 100644
--- a/backend/cimxml/grammar.c
+++ b/backend/cimxml/grammar.c
@@ -444,7 +444,6 @@ static void iReturnValueContent(ParserControl *parm, parseUnion *stateUnion)
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);
@@ -468,7 +467,6 @@ static void iReturnValueContent(ParserControl *parm, parseUnion *stateUnion)
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);
@@ -481,10 +479,10 @@ static void iReturnValueContent(ParserControl *parm, parseUnion *stateUnion)
createPath(&op,&(lvalp.xtokNamedInstance.path));
CMSetNameSpace(op, getNameSpaceChars(parm->requestObjectPath));
inst = native_new_CMPIInstance(op,NULL);
+ op->ft->release(op);
//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);
@@ -498,7 +496,6 @@ static void iReturnValueContent(ParserControl *parm, parseUnion *stateUnion)
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);
--
1.8.4.5