diff --git a/dune/istl/paamg/fastamg.hh b/dune/istl/paamg/fastamg.hh
index cbf1fea138100dd8ee9388fc2a0c71f9221ff582..74240d94dc9a3edcf1b38005eec7d49b689a6641 100644
--- a/dune/istl/paamg/fastamg.hh
+++ b/dune/istl/paamg/fastamg.hh
@@ -471,7 +471,7 @@ namespace Dune
         for(ColIter col=row->begin(); col!=row->end(); ++col) {
           if(row.index()==col.index()) {
             diag = col;
-            hasDiagonal = false;
+            hasDiagonal = (*col != zero);
           }else{
             if(*col!=zero)
               isDirichlet = false;