Skip to content

Computed_field_find_mesh_location::setSearchMesh dereferences potentially null argument #299

@rchristie

Description

@rchristie
int setSearchMesh(cmzn_mesh *searchMeshIn)
{
	if (searchMeshIn != this->searchMesh)
	{
		FE_mesh *feMesh = mesh->getFeMesh();
		FE_mesh *feSearchMesh = searchMeshIn->getFeMesh();  // <-- HERE!
		if ((!searchMeshIn)
			|| (feSearchMesh->get_FE_region() != feMesh->get_FE_region())
			|| (feSearchMesh->getDimension() > feMesh->getDimension()))
		{
			display_message(ERROR_MESSAGE, "FieldFindMeshLocation setSearchMesh  Invalid search mesh");
			return CMZN_ERROR_ARGUMENT;
		}
		cmzn_mesh_access(searchMeshIn);
		cmzn_mesh_destroy(&this->searchMesh);
		this->searchMesh = searchMeshIn;
		this->updateMeshFieldRanges();
		this->field->setChanged();
	}
	return CMZN_OK;
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions