Skip to content

Commit bb0930a

Browse files
committed
check size of values in (un)fix dcs
1 parent 9cb3fd3 commit bb0930a

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

BioFVM/BioFVM_microenvironment.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,11 @@ void Microenvironment::fix_substrate_at_voxel( int substrate_index, int voxel_in
232232

233233
void Microenvironment::fix_substrates_at_voxel( int voxel_index , std::vector<double>& new_values )
234234
{
235+
if (new_values.size() != dirichlet_value_vectors[voxel_index].size())
236+
{
237+
std::cerr << "Error: Incorrect number of values passed in to fix_substrates_at_voxel. Expected " << dirichlet_value_vectors[voxel_index].size() << " values, but got " << new_values.size() << "." << std::endl;
238+
return;
239+
}
235240
dirichlet_value_vectors[voxel_index] = new_values;
236241
return fix_substrates_at_voxel( voxel_index );
237242
}
@@ -258,7 +263,7 @@ void Microenvironment::fix_substrate_at_voxels( int substrate_index, std::vector
258263
{
259264
if (new_values.size() != voxel_indices.size())
260265
{
261-
std::cerr << "Error: new_values size does not match voxel_indices size in Microenvironment::fix_substrate_at_voxels" << std::endl;
266+
std::cerr << "Error: new_values size (" << new_values.size() << ") does not match voxel_indices size (" << voxel_indices.size() << ") in Microenvironment::fix_substrate_at_voxels" << std::endl;
262267
return;
263268
}
264269
for( unsigned int i=0 ; i < voxel_indices.size() ; i++ )

0 commit comments

Comments
 (0)