diff -r 5e441a173c63 -r d9f1e5bfe28c userlibandfileserver/fileserver/sfile/sf_obj.cpp --- a/userlibandfileserver/fileserver/sfile/sf_obj.cpp Mon May 24 18:45:46 2010 +0100 +++ b/userlibandfileserver/fileserver/sfile/sf_obj.cpp Thu Jun 10 11:48:01 2010 +0100 @@ -129,7 +129,13 @@ if (newAlloc!=iAllocated) { if (newAlloc) + { iContainers=(CFsObjectCon**)User::ReAlloc(iContainers,newAlloc*sizeof(CFsObjectCon*)); + if(!iContainers) + { + Fault(EContainerHeapCorruptionOnRemove); + } + } else { delete iContainers; @@ -489,7 +495,13 @@ if (newAlloc!=iAllocated) { if (newAlloc) + { iObjects=(SFsObjectIxRec*)User::ReAlloc(iObjects,newAlloc*sizeof(SFsObjectIxRec)); + if(!iObjects) + { + Fault(EContainerHeapCorruptionOnRemove); + } + } else { delete iObjects; @@ -679,7 +691,13 @@ if (newAlloc!=iAllocated) { if (newAlloc) + { iObjects=(CFsObject**)User::ReAlloc(iObjects,newAlloc*sizeof(CFsObject*)); + if(!iObjects) + { + Fault(EContainerHeapCorruptionOnRemove); + } + } else { delete iObjects;