diff --git a/poi/src/main/java/org/apache/poi/ss/formula/WorkbookEvaluator.java b/poi/src/main/java/org/apache/poi/ss/formula/WorkbookEvaluator.java
index e6403eb..8a8d391 100644
--- a/poi/src/main/java/org/apache/poi/ss/formula/WorkbookEvaluator.java
+++ b/poi/src/main/java/org/apache/poi/ss/formula/WorkbookEvaluator.java
@@ -75,12 +75,12 @@
     /**
      * whether print detailed messages about the next formula evaluation
      */
-    private boolean dbgEvaluationOutputForNextEval = true;
+    private boolean dbgEvaluationOutputForNextEval;
 
     // special logger for formula evaluation output (because of possibly very large output)
     private final Logger EVAL_LOG = LogManager.getLogger("POI.FormulaEval");
     // current indent level for evaluation; negative value for no output
-    private int dbgEvaluationOutputIndent = 1;
+    private int dbgEvaluationOutputIndent = -1;
 
     /**
      * @param udfFinder pass {@code null} for default (AnalysisToolPak only)
@@ -376,7 +376,7 @@
         if (dbgEvaluationOutputForNextEval) {
             // first evaluation call when ouput is desired, so iit. this evaluator instance
             dbgEvaluationOutputIndent = 1;
-            //dbgEvaluationOutputForNextEval = true;
+            dbgEvaluationOutputForNextEval = true;
         }
         if (dbgEvaluationOutputIndent > 0) {
             // init. indent string to needed spaces (create as substring from very long space-only string;
diff --git a/poi/src/test/java/org/apache/poi/ss/formula/TestFormulaEval.java b/poi/src/test/java/org/apache/poi/ss/formula/TestFormulaEval.java
index f5d8283..8c390a0 100644
--- a/poi/src/test/java/org/apache/poi/ss/formula/TestFormulaEval.java
+++ b/poi/src/test/java/org/apache/poi/ss/formula/TestFormulaEval.java
@@ -74,7 +74,7 @@
         }
     }
 
-    //@Disabled("currently causes a StackOverflowError")
+    @Disabled("currently causes a StackOverflowError")
     @Test
     void testBug66152() throws IOException {
         try (HSSFWorkbook wb = new HSSFWorkbook()) {
