From 35f99ea1a07b8df4dfd2b2cfce420788e1ef2f9a Mon Sep 17 00:00:00 2001 From: Jung-uk Kim Date: Wed, 8 Feb 2017 18:44:55 +0000 Subject: [PATCH] - Stop crashing when GTK3 GUI is enabled. - Always use gtk_dialog_get_action_area(). It was available since GTK 2.14. PR: 203563 --- editors/libreoffice/Makefile | 2 +- ...h-vcl_unx_gtk_fpicker_SalGtkFilePicker.cxx | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 editors/libreoffice/files/patch-vcl_unx_gtk_fpicker_SalGtkFilePicker.cxx diff --git a/editors/libreoffice/Makefile b/editors/libreoffice/Makefile index f346a5cc33ab..68ff42c1fd21 100644 --- a/editors/libreoffice/Makefile +++ b/editors/libreoffice/Makefile @@ -2,7 +2,7 @@ .include "${.CURDIR}/Makefile.common" -PORTREVISION= 2 +PORTREVISION= 3 MASTER_SITES= http://download.documentfoundation.org/libreoffice/src/${PORTVERSION}/ \ http://dev-www.libreoffice.org/src/:src \ http://dev-www.libreoffice.org/extern/:ext diff --git a/editors/libreoffice/files/patch-vcl_unx_gtk_fpicker_SalGtkFilePicker.cxx b/editors/libreoffice/files/patch-vcl_unx_gtk_fpicker_SalGtkFilePicker.cxx new file mode 100644 index 000000000000..8e6352b264bc --- /dev/null +++ b/editors/libreoffice/files/patch-vcl_unx_gtk_fpicker_SalGtkFilePicker.cxx @@ -0,0 +1,28 @@ +--- vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx.orig 2017-01-12 00:54:33 UTC ++++ vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx +@@ -418,8 +418,11 @@ shrinkFilterName( const OUString &rFilte + static void + dialog_remove_buttons(GtkWidget *pActionArea) + { +- GList *pChildren = +- gtk_container_get_children( GTK_CONTAINER( pActionArea ) ); ++ GtkContainer *pContainer = GTK_CONTAINER( pActionArea ); ++ ++ g_return_if_fail( pContainer != nullptr ); ++ ++ GList *pChildren = gtk_container_get_children( pContainer ); + + for( GList *p = pChildren; p; p = p->next ) + { +@@ -436,10 +439,10 @@ dialog_remove_buttons( GtkDialog *pDialo + { + g_return_if_fail( GTK_IS_DIALOG( pDialog ) ); + +-#if GTK_CHECK_VERSION(3,0,0) + #if GTK_CHECK_VERSION(3,12,0) + dialog_remove_buttons(gtk_dialog_get_header_bar(pDialog)); + #endif ++#if GTK_CHECK_VERSION(2,14,0) + dialog_remove_buttons(gtk_dialog_get_action_area(pDialog)); + #else + dialog_remove_buttons(pDialog->action_area);