From 283b909dad09048535cec8e3d69d77fa498382bf Mon Sep 17 00:00:00 2001 From: manolo Date: Sun, 21 Dec 2014 10:11:18 +0000 Subject: [PATCH] Remove the link error sometimes caused by class Fl_XFont_On_Demand not exported from libfltk.so but called by function gl_font() of file src/gl_draw.cxx (X11-specific). git-svn-id: http://seriss.com/public/fltk/fltk/branches/branch-1.3@10504 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- FL/x.H | 1 + src/fl_font.cxx | 6 ++++++ src/gl_draw.cxx | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/FL/x.H b/FL/x.H index 2112044..b4fe5fa 100644 --- a/FL/x.H +++ b/FL/x.H @@ -132,6 +132,7 @@ private: 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! diff --git a/src/fl_font.cxx b/src/fl_font.cxx index 6f5f5e0..26960e0 100644 --- a/src/fl_font.cxx +++ b/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)); diff --git a/src/gl_draw.cxx b/src/gl_draw.cxx index 315e11d..d57d41a 100644 --- a/src/gl_draw.cxx +++ b/src/gl_draw.cxx @@ -81,7 +81,7 @@ void gl_font(int fontid, int size) { * 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);