summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2015-12-15 08:31:20 +0000
committerManolo Gouy <Manolo>2015-12-15 08:31:20 +0000
commitdd8c33b19a5b7845b14a4ffc7e2cddefe203f137 (patch)
treea304e2c028ee8a0a624d5f8aa84ca7979aeedf67 /src
parent291cf838bf15eb55aadb828738eba7ed400a72a4 (diff)
Mac OS: it is clearer to initialize the fl_fonts global variable in font-related code.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10965 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
-rw-r--r--src/Fl_Device.cxx5
-rw-r--r--src/fl_font_mac.cxx4
2 files changed, 3 insertions, 6 deletions
diff --git a/src/Fl_Device.cxx b/src/Fl_Device.cxx
index 080ad7761..566039149 100644
--- a/src/Fl_Device.cxx
+++ b/src/Fl_Device.cxx
@@ -75,10 +75,7 @@ void Fl_Graphics_Driver::text_extents(const char*t, int n, int& dx, int& dy, int
/** A constructor that sets the graphics driver used by the display */
Fl_Display_Device::Fl_Display_Device(Fl_Graphics_Driver *graphics_driver) : Fl_Surface_Device(graphics_driver) {
-this->set_current();
-#ifdef __APPLE__
- if (!fl_fonts) fl_fonts = Fl_X::calc_fl_fonts(); // make sure fl_fonts is initialized
-#endif
+ this->set_current();
};
diff --git a/src/fl_font_mac.cxx b/src/fl_font_mac.cxx
index 2e55a29a8..1ab6f3bf6 100644
--- a/src/fl_font_mac.cxx
+++ b/src/fl_font_mac.cxx
@@ -19,7 +19,7 @@
#include <config.h>
#include <math.h>
-Fl_Fontdesc* fl_fonts = Fl_X::calc_fl_fonts();
+Fl_Fontdesc* fl_fonts = NULL;
/* from fl_utf.c */
extern unsigned fl_utf8toUtf16(const char* src, unsigned srclen, unsigned short* dst, unsigned dstlen);
@@ -239,7 +239,6 @@ static UniChar *mac_Utf8_to_Utf16(const char *txt, int len, int *new_len)
Fl_Fontdesc* Fl_X::calc_fl_fonts(void)
{
- if (fl_fonts) return fl_fonts;
if (!fl_mac_os_version) fl_mac_os_version = calc_mac_os_version();
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5
return (fl_mac_os_version >= Fl_X::CoreText_threshold ? built_in_table_PS : built_in_table_full);
@@ -249,6 +248,7 @@ Fl_Fontdesc* Fl_X::calc_fl_fonts(void)
}
static Fl_Font_Descriptor* find(Fl_Font fnum, Fl_Fontsize size) {
+ if (!fl_fonts) fl_fonts = Fl_X::calc_fl_fonts();
Fl_Fontdesc* s = fl_fonts+fnum;
if (!s->name) s = fl_fonts; // use 0 if fnum undefined
Fl_Font_Descriptor* f;