diff --git a/dune/solvers/iterationsteps/truncatedblockgsstep.hh b/dune/solvers/iterationsteps/truncatedblockgsstep.hh index 6069091bb5ea45c71260d51970fe5114cbb292e3..1381e3a9617150a794516bd8ffc8f904ff5c5f4b 100644 --- a/dune/solvers/iterationsteps/truncatedblockgsstep.hh +++ b/dune/solvers/iterationsteps/truncatedblockgsstep.hh @@ -301,8 +301,9 @@ public: typename MBlock::row_type::Iterator inner_it = A[i].begin(); typename MBlock::row_type::Iterator inner_end = A[i].end(); for(; inner_it!=inner_end; ++inner_it) - if (inner_it.index()==i and *inner_it==0.0) + if (ignore[i] && inner_it.index()==i) { + assert(*inner_it == 0.0); *inner_it = 1.0; b[i] = x[i]; }