aboutsummaryrefslogtreecommitdiffstats
path: root/main/fltk/Fl_XFont_On_Demand.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/fltk/Fl_XFont_On_Demand.patch')
-rw-r--r--main/fltk/Fl_XFont_On_Demand.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/main/fltk/Fl_XFont_On_Demand.patch b/main/fltk/Fl_XFont_On_Demand.patch
new file mode 100644
index 0000000000..4b51089383
--- /dev/null
+++ b/main/fltk/Fl_XFont_On_Demand.patch
@@ -0,0 +1,36 @@
+--- fltk-1.3.3/src/fl_font.cxx
++++ fltk-1.3.3/src/fl_font.cxx
+@@ -55,6 +55,12 @@
+ # include "fl_font_x.cxx"
+ #endif // WIN32
+
++#if ! (defined(WIN32) || defined(__APPLE__))
++XFontStruct *fl_X_core_font()
++{
++ return fl_xfont.value();
++}
++#endif
+
+ double fl_width(const char* c) {
+ if (c) return fl_width(c, (int) strlen(c));
+--- fltk-1.3.3/src/gl_draw.cxx
++++ fltk-1.3.3/src/gl_draw.cxx
+@@ -81,7 +81,7 @@
+ * then sorting through them at draw time (for normal X rendering) to find which one can
+ * render the current glyph... But for now, just use the first font in the list for GL...
+ */
+- XFontStruct *font = fl_xfont;
++ XFontStruct *font = fl_X_core_font();
+ int base = font->min_char_or_byte2;
+ int count = font->max_char_or_byte2-base+1;
+ fl_fontsize->listbase = glGenLists(256);
+--- fltk-1.3.3/FL/x.H
++++ fltk-1.3.3/FL/x.H
+@@ -132,6 +132,7 @@
+ XFontStruct *ptr;
+ };
+ extern FL_EXPORT Fl_XFont_On_Demand fl_xfont;
++extern FL_EXPORT XFontStruct* fl_X_core_font();
+
+ // this object contains all X-specific stuff about a window:
+ // Warning: this object is highly subject to change!