release_profile( profile );
return FALSE;
}
- *present = cmsIsTag( profile->cmsprofile, type );
+ *present = (cmsIsTag( profile->cmsprofile, type ) != 0);
release_profile( profile );
ret = TRUE;
if (!(data = HeapAlloc( GetProcessHeap(), 0, profile->cbDataSize ))) return NULL;
memcpy( data, profile->pProfileData, profile->cbDataSize );
- cmsprofile = cmsOpenProfileFromMem( data, profile->cbDataSize );
+ if (!(cmsprofile = cmsOpenProfileFromMem( data, profile->cbDataSize )))
+ {
+ HeapFree( GetProcessHeap(), 0, data );
+ return FALSE;
+ }
size = profile->cbDataSize;
}
else if (profile->dwType == PROFILE_FILENAME)
HeapFree( GetProcessHeap(), 0, data );
return NULL;
}
- cmsprofile = cmsOpenProfileFromMem( data, size );
+ if (!(cmsprofile = cmsOpenProfileFromMem( data, size )))
+ {
+ CloseHandle( handle );
+ HeapFree( GetProcessHeap(), 0, data );
+ return NULL;
+ }
}
else
{