# HG changeset patch
# User Heidi Eckhart <heidieck(a)linux.vnet.ibm.com>
# Date 1203673820 -3600
# Node ID e6f0c8edd6bf2fff9681195e3edc8c1d601fe78f
# Parent b9cbac659a845feda6f170fe23663ea7f187bf21
Enhance default setting of property CreationClassName
Not all CIM classes define the property CreationClassName.
This patch adds a check if CreationClassName is property of
the class and sets it only if there.
Signed-off-by: Heidi Eckhart <heidieck(a)linux.vnet.ibm.com>
diff -r b9cbac659a84 -r e6f0c8edd6bf libxkutil/misc_util.c
--- a/libxkutil/misc_util.c Fri Feb 22 10:34:21 2008 +0100
+++ b/libxkutil/misc_util.c Fri Feb 22 10:50:20 2008 +0100
@@ -236,6 +236,7 @@ CMPIInstance *get_typed_instance(const C
CMPIObjectPath *op;
CMPIInstance *inst = NULL;
CMPIStatus s;
+ CMPIData data;
new_cn = get_typed_class(refcn, base);
if (new_cn == NULL)
@@ -248,9 +249,11 @@ CMPIInstance *get_typed_instance(const C
inst = CMNewInstance(broker, op, &s);
if ((s.rc != CMPI_RC_OK) || CMIsNullObject(inst))
goto out;
-
- CMSetProperty(inst, "CreationClassName",
- (CMPIValue *)new_cn, CMPI_chars);
+
+ data = CMGetProperty(inst, "CreationClassName", &s);
+ if (s.rc == CMPI_RC_OK)
+ CMSetProperty(inst, "CreationClassName",
+ (CMPIValue *)new_cn, CMPI_chars);
out:
free(new_cn);
Show replies by thread
Heidi Eckhart wrote:
# HG changeset patch
# User Heidi Eckhart <heidieck(a)linux.vnet.ibm.com>
# Date 1203673820 -3600
# Node ID e6f0c8edd6bf2fff9681195e3edc8c1d601fe78f
# Parent b9cbac659a845feda6f170fe23663ea7f187bf21
Enhance default setting of property CreationClassName
Not all CIM classes define the property CreationClassName.
This patch adds a check if CreationClassName is property of
the class and sets it only if there.
Signed-off-by: Heidi Eckhart <heidieck(a)linux.vnet.ibm.com>
This is a nice catch! +1
--
Kaitlin Rupert
IBM Linux Technology Center
kaitlin(a)linux.vnet.ibm.com