aboutsummaryrefslogtreecommitdiffstats
path: root/main/fltk/Fl_XFont_On_Demand.patch
blob: 4b51089383b76975c8b389ce2f5c046968e13bf1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
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!