From c69c56aeed201d41c02bd81f7ae0745e2d742626 Mon Sep 17 00:00:00 2001
From: Mikhail Svechnikov <svechnikovmv@gmail.com>
Date: Tue, 30 Jul 2024 17:53:36 +0200
Subject: [PATCH] limit with assert

---
 Sample/Interface/RoughnessMap.cpp | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/Sample/Interface/RoughnessMap.cpp b/Sample/Interface/RoughnessMap.cpp
index ca70a69d042..a85a27ba838 100644
--- a/Sample/Interface/RoughnessMap.cpp
+++ b/Sample/Interface/RoughnessMap.cpp
@@ -205,8 +205,11 @@ void RoughnessMap::createMap()
     double2d_t h_map = mapFromHeights();
     double2d_t s_map = mapFromSpectrum();
 
-    // number of iterations is limited even if no convergence
-    for (int i = 0; i < 100; i++) {
+
+    int iter = 0;
+    while (true) {
+        // number of iterations is limited even if no convergence
+        ASSERT(iter < 100);
         double2d_t h_map_old = h_map;
         s_map = applySpectrumToHeights(h_map, s_map);
         h_map = applyHeightsToSpectrum(h_map, s_map);
@@ -214,6 +217,7 @@ void RoughnessMap::createMap()
         // adjust tolerance for proper speed/accuracy
         if (::converged(h_map_old, h_map, 1e-4))
             break;
+        iter++;
     }
 
     // 's_map' has "perfect" original spectrum and tolerable height statistics.
-- 
GitLab