From 0e6b20d957c682cd9bc7712e2869384c4801b985 Mon Sep 17 00:00:00 2001
From: Albrecht Schlosser <albrechts.fltk@online.de>
Date: Thu, 12 Dec 2024 16:40:11 +0100
Subject: [PATCH] Put ABI breaking changes under ABI guards (#1139)

This reverts the improvement of #1139 in the default build which is
now only available with FL_ABI_VERSION=10401 or higher.

Users that need this improvement need to build with the required
ABI version by setting it with configure or CMake.
---
 FL/Fl_Graphics_Driver.H | 7 ++++++-
 FL/Fl_Help_View.H       | 7 ++++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/FL/Fl_Graphics_Driver.H b/FL/Fl_Graphics_Driver.H
index 1bb3632f9..37210173a 100644
--- a/FL/Fl_Graphics_Driver.H
+++ b/FL/Fl_Graphics_Driver.H
@@ -57,7 +57,12 @@ typedef struct _PangoFontDescription PangoFontDescription;
 // See issue #1139: "FL_REGION_STACK_SIZE could be increased"
 // and issue #1140: "Fix static array allocation".
 
-#define FL_REGION_STACK_SIZE 64
+#if FL_ABI_VERSION >= 10401
+# define FL_REGION_STACK_SIZE 64
+#else
+# define FL_REGION_STACK_SIZE 10
+#endif
+
 #define FL_MATRIX_STACK_SIZE 32
 
 /**
diff --git a/FL/Fl_Help_View.H b/FL/Fl_Help_View.H
index 35fd44ee0..6a59e58c8 100644
--- a/FL/Fl_Help_View.H
+++ b/FL/Fl_Help_View.H
@@ -3,7 +3,7 @@
 //
 // Copyright 1997-2010 by Easy Software Products.
 // Image support by Matthias Melcher, Copyright 2000-2009.
-// Copyright 2011-2022 by Bill Spitzak and others.
+// Copyright 2011-2024 by Bill Spitzak and others.
 //
 // This library is free software. Distribution and use rights are outlined in
 // the file "COPYING" which should have been included with this file.  If this
@@ -225,7 +225,12 @@ class FL_EXPORT Fl_Help_View : public Fl_Group {        // Help viewer widget
                 atargets_;              ///< Allocated targets
   Fl_Help_Target *targets_;             ///< Targets
 
+#if FL_ABI_VERSION >= 10401
   char          directory_[2 * FL_PATH_MAX + 15]; ///< Directory for current file
+#else
+  char          directory_[FL_PATH_MAX]; ///< Directory for current file
+#endif
+
   char          filename_[FL_PATH_MAX]; ///< Current filename
   int           topline_,               ///< Top line in document
                 leftline_,              ///< Lefthand position
-- 
GitLab