From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: xfce-base/xfce4-session/, xfce-base/xfce4-session/files/
Date: Wed, 10 Jan 2018 09:02:58 +0000 (UTC) [thread overview]
Message-ID: <1515574969.b3ce9a81ab6ed752bfd0a5eeee0dd3daf9b920e0.mgorny@gentoo> (raw)
commit: b3ce9a81ab6ed752bfd0a5eeee0dd3daf9b920e0
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 10 09:01:51 2018 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Jan 10 09:02:49 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b3ce9a81
xfce-base/xfce4-session: Backport autostart dialog segv fix
Closes: https://bugs.gentoo.org/628324
...e4-session-4.13.0-add-edit-autostart-segv.patch | 57 ++++++++++++++++
.../xfce4-session/xfce4-session-4.13.0-r1.ebuild | 78 ++++++++++++++++++++++
2 files changed, 135 insertions(+)
diff --git a/xfce-base/xfce4-session/files/xfce4-session-4.13.0-add-edit-autostart-segv.patch b/xfce-base/xfce4-session/files/xfce4-session-4.13.0-add-edit-autostart-segv.patch
new file mode 100644
index 00000000000..ff5b805d322
--- /dev/null
+++ b/xfce-base/xfce4-session/files/xfce4-session-4.13.0-add-edit-autostart-segv.patch
@@ -0,0 +1,57 @@
+From 193b09a9c159d1d16ad69e4298f48c2b531e9392 Mon Sep 17 00:00:00 2001
+From: Eric Koegel <eric.koegel@gmail.com>
+Date: Mon, 1 May 2017 06:55:05 +0300
+Subject: Add/Edit Application Autostart Entries (Bug #13271)
+
+With xfce4-session built from git (after the gtk3
+migration work), trying to add or edit an application
+autostart entry results in a segmentation fault after a
+"(xfce4-session-settings:9094): Gtk-CRITICAL **:
+gtk_entry_get_text: assertion 'GTK_IS_ENTRY (entry)'
+failed" message.
+
+It appears that when the "notify::text" signal callbacks
+for the "command_entry" and "name_entry" GtkEntry objects
+are created, they are called immediately, before the second
+GtkEntry object is created resulting in a failure in the
+xfae_dialog_update() function to properly process the objects.
+Thanks to ToZ for reporting and providing the fix.
+---
+ settings/xfae-dialog.c | 11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/settings/xfae-dialog.c b/settings/xfae-dialog.c
+index af860b9..7442634 100644
+--- a/settings/xfae-dialog.c
++++ b/settings/xfae-dialog.c
+@@ -98,8 +98,7 @@ xfae_dialog_init (XfaeDialog *dialog)
+ dialog->name_entry = g_object_new (GTK_TYPE_ENTRY,
+ "activates-default", TRUE,
+ NULL);
+- g_signal_connect_swapped (G_OBJECT (dialog->name_entry), "notify::text",
+- G_CALLBACK (xfae_dialog_update), dialog);
++
+ gtk_grid_attach (GTK_GRID (grid), dialog->name_entry, 1, 0, 1, 1);
+ gtk_widget_show (dialog->name_entry);
+
+@@ -132,11 +131,15 @@ xfae_dialog_init (XfaeDialog *dialog)
+ dialog->command_entry = g_object_new (GTK_TYPE_ENTRY,
+ "activates-default", TRUE,
+ NULL);
+- g_signal_connect_swapped (G_OBJECT (dialog->command_entry), "notify::text",
+- G_CALLBACK (xfae_dialog_update), dialog);
++
+ gtk_box_pack_start (GTK_BOX (hbox), dialog->command_entry, TRUE, TRUE, 0);
+ gtk_widget_show (dialog->command_entry);
+
++ g_signal_connect_swapped (G_OBJECT (dialog->name_entry), "notify::text",
++ G_CALLBACK (xfae_dialog_update), dialog);
++ g_signal_connect_swapped (G_OBJECT (dialog->command_entry), "notify::text",
++ G_CALLBACK (xfae_dialog_update), dialog);
++
+ button = g_object_new (GTK_TYPE_BUTTON,
+ "can-default", FALSE,
+ NULL);
+--
+cgit v1.1
+
diff --git a/xfce-base/xfce4-session/xfce4-session-4.13.0-r1.ebuild b/xfce-base/xfce4-session/xfce4-session-4.13.0-r1.ebuild
new file mode 100644
index 00000000000..2d045a1e7c0
--- /dev/null
+++ b/xfce-base/xfce4-session/xfce4-session-4.13.0-r1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit gnome2-utils
+
+DESCRIPTION="A session manager for the Xfce desktop environment"
+HOMEPAGE="https://docs.xfce.org/xfce/xfce4-session/start"
+SRC_URI="mirror://xfce/src/xfce/${PN}/${PV%.*}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris"
+IUSE="nls policykit systemd +xscreensaver"
+
+COMMON_DEPEND="x11-apps/iceauth
+ x11-libs/gtk+:3=
+ x11-libs/libSM:=
+ x11-libs/libwnck:3=
+ x11-libs/libX11:=
+ >=xfce-base/libxfce4util-4.12:=
+ >=xfce-base/libxfce4ui-4.12.1:=[gtk3(+)]
+ >=xfce-base/xfconf-4.12:=
+ policykit? ( >=sys-auth/polkit-0.102:= )"
+RDEPEND="${COMMON_DEPEND}
+ x11-apps/xrdb
+ nls? ( x11-misc/xdg-user-dirs )
+ xscreensaver? ( || (
+ >=x11-misc/xscreensaver-5.26
+ x11-misc/light-locker
+ >=x11-misc/xlockmore-5.43
+ x11-misc/slock
+ x11-misc/alock[pam]
+ ) )"
+DEPEND="${COMMON_DEPEND}
+ dev-util/intltool
+ sys-devel/gettext
+ virtual/pkgconfig"
+
+REQUIRED_USE="systemd? ( policykit )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.10.1-alock_support_to_xflock4.patch
+# TODO: this patch needs updating for the new version, and finding
+# upstream bug.
+# "${FILESDIR}"/${PN}-4.12.1-light-locker_support_to_xflock4.patch
+
+ "${FILESDIR}"/${P}-add-edit-autostart-segv.patch
+)
+
+src_configure() {
+ local myconf=(
+ $(use_enable policykit polkit)
+ --with-xsession-prefix="${EPREFIX}"/usr
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+
+ local sessiondir=/etc/X11/Sessions
+ echo startxfce4 > "${T}"/Xfce4 || die
+ exeinto ${sessiondir}
+ doexe "${T}"/Xfce4
+ dosym Xfce4 ${sessiondir}/Xfce
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
next reply other threads:[~2018-01-10 9:03 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-10 9:02 Michał Górny [this message]
-- strict thread matches above, loose matches on Subject: below --
2018-10-05 19:17 [gentoo-commits] repo/gentoo:master commit in: xfce-base/xfce4-session/, xfce-base/xfce4-session/files/ Michał Górny
2016-02-02 18:43 Denis Dupeyron
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1515574969.b3ce9a81ab6ed752bfd0a5eeee0dd3daf9b920e0.mgorny@gentoo \
--to=mgorny@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox