- pinentry-gtk -g segfaults on focus change (#520236)

This commit is contained in:
Rex Dieter 2010-04-18 16:51:23 +00:00
parent 9025af2b1a
commit 8388aecc1d
2 changed files with 42 additions and 1 deletions

View File

@ -0,0 +1,32 @@
From 977d49018cebcc37d0b667713ad422f80ba9c8d2 Mon Sep 17 00:00:00 2001
From: Stanislav Ochotnicky <sochotnicky@redhat.com>
Date: Fri, 16 Apr 2010 16:17:04 +0200
Subject: [PATCH] Fix pinentry-gtk-2 SIGSEGV when unfocusing with -g argument
gdk_window_set_transient_for cannot be used with parent = NULL to
unset transient hint (unlike gtk_ version which can). Replacement
code is taken from gtk_window_transient_parent_unrealized
Applied cleanly at least over 0.8.0 and 0.7.6
More info see: https://bugzilla.redhat.com/show_bug.cgi?id=520236
---
gtk+-2/pinentry-gtk-2.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/gtk+-2/pinentry-gtk-2.c b/gtk+-2/pinentry-gtk-2.c
index 7cd7616..fdd5822 100644
--- a/gtk+-2/pinentry-gtk-2.c
+++ b/gtk+-2/pinentry-gtk-2.c
@@ -145,7 +145,8 @@ ungrab_keyboard (GtkWidget *win, GdkEvent *event, gpointer data)
{
gdk_keyboard_ungrab (gdk_event_get_time (event));
/* Unmake window transient for the root window. */
- gdk_window_set_transient_for (win->window, NULL);
+ gdk_property_delete (win->window,
+ gdk_atom_intern_static_string ("WM_TRANSIENT_FOR"));
}
--
1.6.6.1

View File

@ -10,7 +10,7 @@
Name: pinentry
Version: 0.7.6
Release: 4%{?dist}
Release: 5%{?dist}
Summary: Collection of simple PIN or passphrase entry dialogs
Group: Applications/System
@ -23,6 +23,10 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# borrowed from opensuse
Source10: pinentry-wrapper
## Upstreamable patches
# from gpa-devel list, archives seem 404'd atm
Patch50: 0001-Fix-pinentry-gtk-2-SIGSEGV-when-unfocusing-with-g-ar.patch
BuildRequires: gtk2-devel
BuildRequires: libcap-devel
BuildRequires: ncurses-devel
@ -83,6 +87,8 @@ Support for Qt4 is new, and a bit experimental.
%prep
%setup -q
%patch50 -p1 -b .rhbug_520236
# hack around auto* madness, lack of proper support for moc
%if %{?_enable_pinentry_qt4:1}
pushd qt4
@ -165,6 +171,9 @@ fi
%changelog
* Sun Apr 18 2010 Rex Dieter <rdieter@fedoraproject.org> - 0.7.6-5
- pinentry-gtk -g segfaults on focus change (#520236)
* Wed Sep 13 2009 Rex Dieter <rdieter@fedoraproject.org> - 0.7.6-4
- Errors installing with --excludedocs (#515925)