Browse Source

Fix "Fl::get_font_name() with Pango is inconsistent"-cont'd (#732)

pull/740/head
ManoloFLTK 2 years ago
parent
commit
11c38c3e41
  1. 5
      src/drivers/Cairo/Fl_Cairo_Graphics_Driver.cxx
  2. 5
      src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx

5
src/drivers/Cairo/Fl_Cairo_Graphics_Driver.cxx

@ -1075,7 +1075,10 @@ Fl_Font Fl_Cairo_Graphics_Driver::set_fonts(const char* /*pattern_name*/) @@ -1075,7 +1075,10 @@ Fl_Font Fl_Cairo_Graphics_Driver::set_fonts(const char* /*pattern_name*/)
// Force LANG=C to prevent pango_font_face_get_face_name() below from returning
// translated versions of Bold, Italic, etc… (see issue #732).
// Unfortunately, using setlocale() doesn't do the job.
saved_lang = strdup(saved_lang);
char *p = saved_lang;
saved_lang = (char*)malloc(strlen(p) + 6);
memcpy(saved_lang, "LANG=", 5);
strcpy(saved_lang + 5, p);
fl_putenv(Clang);
} else saved_lang = NULL;
static PangoFontMap *pfmap_ = pango_cairo_font_map_get_default(); // 1.10

5
src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx

@ -1398,7 +1398,10 @@ Fl_Font Fl_Xlib_Graphics_Driver::set_fonts(const char* pattern_name) @@ -1398,7 +1398,10 @@ Fl_Font Fl_Xlib_Graphics_Driver::set_fonts(const char* pattern_name)
// Force LANG=C to prevent pango_font_face_get_face_name() below from returning
// translated versions of Bold, Italic, etc… (see issue #732).
// Unfortunately, using setlocale() doesn't do the job.
saved_lang = strdup(saved_lang);
char *p = saved_lang;
saved_lang = (char*)malloc(strlen(p) + 6);
memcpy(saved_lang, "LANG=", 5);
strcpy(saved_lang + 5, p);
fl_putenv(Clang);
} else saved_lang = NULL;
for (int fam = 0; fam < n_families; fam++) {

Loading…
Cancel
Save