diff --git a/dune/elasticity/common/trustregionsolver.cc b/dune/elasticity/common/trustregionsolver.cc
index 279dcf1f7525ac82da50578291636399f9db52fb..92e45badc309eeecd4e8d128103f6fbb6913dede 100644
--- a/dune/elasticity/common/trustregionsolver.cc
+++ b/dune/elasticity/common/trustregionsolver.cc
@@ -551,16 +551,12 @@ void TrustRegionSolver<BasisType,VectorType>::solve()
 
             if (correctionInfinityNorm < this->tolerance_) {
                 if (this->verbosity_ == NumProc::FULL and rank==0)
-                    std::cout << "CORRECTION IS SMALL ENOUGH" << std::endl;
-
-                if (this->verbosity_ != NumProc::QUIET and rank==0)
-                    std::cout << i+1 << " trust-region steps were taken." << std::endl;
-                break;
-            }
-
-            if (trustRegion.radius() < this->tolerance_) {
-              if (this->verbosity_ == NumProc::FULL and rank==0)
-                    std::cout << "TRUST REGION RADIUS IS TOO SMALL, SMALLER THAN TOLERANCE, STOPPING NOW" << std::endl;
+                {
+                    if (correctionInfinityNorm < trustRegion.radius())
+                        std::cout << "CORRECTION IS SMALL ENOUGH" << std::endl;
+                    else
+                        std::cout << "TRUST-REGION UNDERFLOW!" << std::endl;
+                }
 
                 if (this->verbosity_ != NumProc::QUIET and rank==0)
                     std::cout << i+1 << " trust-region steps were taken." << std::endl;