[ 2982352 ] Double free in backend/cimxml/property.c
diff --git a/ChangeLog b/ChangeLog
index 781aed4..fc13a96 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -4,6 +4,10 @@
Fixed 2982349: Memory leak in backend/cimxml/client.c
(patch by Suresh Sundriyal)
+ * backend/cimxml/property.c:
+ Fixed 2982352: Double free in backend/cimxml/property.c
+ (patch by Suresh Sundriyal)
+
2009-09-22 Chris Buccella <buccella@linux.vnet.ibm.com>
* backend/cimxml/cimXmlParser.h:
diff --git a/NEWS b/NEWS
index ee85405..75e3341 100644
--- a/NEWS
+++ b/NEWS
@@ -5,6 +5,7 @@
Bugs:
- 2982349: Memory leak in backend/cimxml/client.c
+- 2982352: Double free in backend/cimxml/property.c
Changes in 2.2.1
================
diff --git a/backend/cimxml/property.c b/backend/cimxml/property.c
index 2bf0fc2..7a77712 100644
--- a/backend/cimxml/property.c
+++ b/backend/cimxml/property.c
@@ -19,7 +19,7 @@
http://www.opensource.org/licenses/eclipse-1.0.php
\author Frank Scheffler
- $Revision: 1.4 $
+ $Revision: 1.5 $
*/
#include <stdio.h>
@@ -218,7 +218,8 @@
struct native_property * next;
for ( ; prop; prop = next ) {
free ( prop->name );
- native_release_CMPIValue ( prop->type, &prop->value );
+ if(prop->state != CMPI_nullValue)
+ native_release_CMPIValue ( prop->type, &prop->value );
qualifierFT.release(prop->qualifiers);
next=prop->next;
free ( prop );
diff --git a/contributions.txt b/contributions.txt
index ba31924..8c3e0f8 100644
--- a/contributions.txt
+++ b/contributions.txt
@@ -40,3 +40,4 @@
Suresh Sundriyal, VMWare
------------------------
04/05/2010 [ 2982349 ] Memory leak in backend/cimxml/client.c
+04/05/2010 [ 2982352 ] Double free in backend/cimxml/property.c