From 55a700a33eb7d0a28b587cc33dd0c0768f6e2764 Mon Sep 17 00:00:00 2001 From: Olivier Duchateau Date: Tue, 12 Nov 2019 09:51:26 +0100 Subject: [PATCH] Thunar 1.8.10 crashing on startup in FreeBSD and Fedora, caused by nonfunctional pango version check (Bug #16136, Bug #16138) Co-authored-by: Guido Falsi Co-authored-by: Alexander Schwinn --- configure.ac.in | 1 + thunar/Makefile.am | 4 +++- thunar/thunar-pango-extensions.c | 4 ++-- thunar/thunar-pango-extensions.h | 2 ++ thunar/thunar-standard-view.c | 2 ++ 5 files changed, 10 insertions(+), 3 deletions(-) diff --git a/configure.ac.in b/configure.ac.in index 2728ff7a..01fb7f2a 100644 --- a/configure.ac.in +++ b/configure.ac.in @@ -156,6 +156,7 @@ XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.12.0]) XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-2], [4.12.0]) XDT_CHECK_PACKAGE([LIBXFCE4KBD_PRIVATE], [libxfce4kbd-private-3], [4.12.0]) XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.12.0]) +XDT_CHECK_PACKAGE([PANGO], [pango], [1.42.0]) dnl ****************************** dnl *** GObject Instrospection *** diff --git a/thunar/Makefile.am b/thunar/Makefile.am index 3ee90a22..cff7b495 100644 --- a/thunar/Makefile.am +++ b/thunar/Makefile.am @@ -229,6 +229,7 @@ thunar_CFLAGS = \ $(LIBSM_CFLAGS) \ $(LIBXFCE4UI_CFLAGS) \ $(XFCONF_CFLAGS) \ + $(PANGO_CFLAGS) \ $(PLATFORM_CFLAGS) thunar_LDFLAGS = \ @@ -245,7 +246,8 @@ thunar_LDADD = \ $(LIBNOTIFY_LIBS) \ $(LIBSM_LIBS) \ $(LIBXFCE4UI_LIBS) \ - $(XFCONF_LIBS) + $(XFCONF_LIBS) \ + $(PANGO_LIBS) thunar_DEPENDENCIES = \ $(top_builddir)/thunarx/libthunarx-$(THUNARX_VERSION_API).la diff --git a/thunar/thunar-pango-extensions.c b/thunar/thunar-pango-extensions.c index 3ff6262c..d42f83ba 100644 --- a/thunar/thunar-pango-extensions.c +++ b/thunar/thunar-pango-extensions.c @@ -128,18 +128,18 @@ thunar_pango_attr_list_bold (void) * Return value: a #PangoAttrList for not inserting hyphens at intra-word line * breaks. **/ +#if PANGO_VERSION_CHECK (1, 44, 0) PangoAttrList* thunar_pango_attr_disable_hyphens (void) { static PangoAttrList *attr_list = NULL; -#ifdef PANGO_VERSION_1_44 if (G_UNLIKELY (attr_list == NULL)) attr_list = thunar_pango_attr_list_wrap (pango_attr_insert_hyphens_new (FALSE), NULL); -#endif return attr_list; } +#endif diff --git a/thunar/thunar-pango-extensions.h b/thunar/thunar-pango-extensions.h index aa0e515b..c86966e1 100644 --- a/thunar/thunar-pango-extensions.h +++ b/thunar/thunar-pango-extensions.h @@ -27,7 +27,9 @@ G_BEGIN_DECLS; PangoAttrList *thunar_pango_attr_list_big (void) G_GNUC_CONST; PangoAttrList *thunar_pango_attr_list_big_bold (void) G_GNUC_CONST; PangoAttrList *thunar_pango_attr_list_bold (void) G_GNUC_CONST; +#if PANGO_VERSION_CHECK (1, 44, 0) PangoAttrList *thunar_pango_attr_disable_hyphens (void) G_GNUC_CONST; +#endif PangoAttrList *thunar_pango_attr_list_italic (void) G_GNUC_CONST; PangoAttrList *thunar_pango_attr_list_small_italic (void) G_GNUC_CONST; PangoAttrList *thunar_pango_attr_list_small (void) G_GNUC_CONST; diff --git a/thunar/thunar-standard-view.c b/thunar/thunar-standard-view.c index cdcb0e04..c99a9407 100644 --- a/thunar/thunar-standard-view.c +++ b/thunar/thunar-standard-view.c @@ -714,7 +714,9 @@ G_GNUC_END_IGNORE_DEPRECATIONS /* setup the name renderer */ standard_view->name_renderer = g_object_new (GTK_TYPE_CELL_RENDERER_TEXT, +#if PANGO_VERSION_CHECK (1, 44, 0) "attributes", thunar_pango_attr_disable_hyphens (), +#endif "alignment", PANGO_ALIGN_CENTER, "xalign", 0.5, FALSE); -- 2.23.0