Update of /cvsroot/sblim/sfcb
In directory vz-cvs-3.sog:/tmp/cvs-serv7230
Modified Files:
result.c
Log Message:
[3413031] fixes to perform check before calling free
Index: result.c
===================================================================
RCS file: /cvsroot/sblim/sfcb/result.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- result.c 17 Feb 2011 21:22:23 -0000 1.16
+++ result.c 23 Sep 2011 20:18:46 -0000 1.17
@@ -168,9 +168,9 @@
{
NativeResult *nr = (NativeResult*) result;
- free(nr->data);
- free(nr->resp);
- free(result);
+ if (nr->data) { free(nr->data); nr->data = NULL; }
+ if (nr->resp) { free(nr->resp); nr->resp = NULL; }
+ if (result) { free(result); result = NULL; }
CMReturn(CMPI_RC_OK);
}
@@ -284,13 +284,13 @@
if (isInst) {
size=getInstanceSerializedSize(instance);
- ptr=nextResultBufferPos(r, MSG_SEG_INSTANCE, size);
+ ptr=nextResultBufferPos(r, MSG_SEG_INSTANCE, (unsigned long)size);
_SFCB_TRACE(1,("--- Moving instance %d",size));
getSerializedInstance(instance,ptr); /* memcpy inst to ptr */
}
else {
size=getConstClassSerializedSize((CMPIConstClass*)instance);
- ptr=nextResultBufferPos(r, MSG_SEG_CONSTCLASS, size);
+ ptr=nextResultBufferPos(r, MSG_SEG_CONSTCLASS, (unsigned long)size);
_SFCB_TRACE(1,("--- Moving class %d",size));
getSerializedConstClass((CMPIConstClass*)instance,ptr);
}
|