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

openSUSE Build Service is sponsored by