From 0e0f833be24d74c805684e02c6c67fb9041a7878 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Hor=C3=A1k?= Date: Mon, 29 Nov 2010 16:39:14 +0100 Subject: [PATCH] - added fix for crashes during DnD (#626012) - bakefiles are included in devel subpackage (#626314) --- wxGTK-2.8.11-dnd.patch | 46 ++++++++++++++++++++++++++++++++++++++++++ wxGTK.spec | 14 +++++++++---- 2 files changed, 56 insertions(+), 4 deletions(-) create mode 100644 wxGTK-2.8.11-dnd.patch diff --git a/wxGTK-2.8.11-dnd.patch b/wxGTK-2.8.11-dnd.patch new file mode 100644 index 0000000..9583a1e --- /dev/null +++ b/wxGTK-2.8.11-dnd.patch @@ -0,0 +1,46 @@ +Index: src/gtk/dnd.cpp +=================================================================== +--- src/gtk/dnd.cpp (revision 65479) ++++ src/gtk/dnd.cpp (revision 65480) +@@ -946,21 +946,27 @@ + + void wxDropSource::UnregisterWindow() + { +- if (!m_widget) +- return; ++ if (m_widget) ++ { ++ g_signal_handlers_disconnect_by_func (m_widget, ++ (gpointer) source_drag_data_get, ++ this); ++ g_signal_handlers_disconnect_by_func (m_widget, ++ (gpointer) source_drag_data_delete, ++ this); ++ g_signal_handlers_disconnect_by_func (m_widget, ++ (gpointer) source_drag_begin, ++ this); ++ g_signal_handlers_disconnect_by_func (m_widget, ++ (gpointer) source_drag_end, ++ this); ++ } + +- g_signal_handlers_disconnect_by_func (m_widget, +- (gpointer) source_drag_data_get, +- this); +- g_signal_handlers_disconnect_by_func (m_widget, +- (gpointer) source_drag_data_delete, +- this); +- g_signal_handlers_disconnect_by_func (m_widget, +- (gpointer) source_drag_begin, +- this); +- g_signal_handlers_disconnect_by_func (m_widget, +- (gpointer) source_drag_end, +- this); ++ if (m_iconWindow) ++ { ++ g_signal_handlers_disconnect_by_func (m_iconWindow, ++ (gpointer) gtk_dnd_window_configure_callback, this); ++ } + } + + #endif diff --git a/wxGTK.spec b/wxGTK.spec index a8cac43..363dbf0 100644 --- a/wxGTK.spec +++ b/wxGTK.spec @@ -1,12 +1,14 @@ Name: wxGTK Version: 2.8.11 -Release: 2%{?dist} +Release: 3%{?dist} Summary: GTK2 port of the wxWidgets GUI library License: wxWidgets Group: System Environment/Libraries URL: http://www.wxwidgets.org/ Source0: http://downloads.sourceforge.net/wxwindows/%{name}-%{version}.tar.bz2 Source1: wx-config +# https://bugzilla.redhat.com/show_bug.cgi?id=626012 +Patch0: %{name}-2.8.11-dnd.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -38,6 +40,7 @@ Requires: %{name}-media = %{version}-%{release} Requires: wxBase = %{version}-%{release} Requires: gtk2-devel Requires: libGL-devel, libGLU-devel +Requires: bakefile %description devel This package include files needed to link with the wxGTK2 library. @@ -75,6 +78,7 @@ libraries or the X Window System. %prep %setup -q -n %{name}-%{version} +%patch0 -p0 -b .dnd sed -i -e 's|/usr/lib\b|%{_libdir}|' wx-config.in configure @@ -141,9 +145,6 @@ rm -rf $RPM_BUILD_ROOT rm $RPM_BUILD_ROOT%{_bindir}/wx-config install -p -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/wx-config -# we don't support bakefiles -rm -rf $RPM_BUILD_ROOT%{_datadir}/bakefile - %find_lang wxstd %find_lang wxmsw cat wxmsw.lang >> wxstd.lang @@ -199,6 +200,7 @@ popd %dir %{_libdir}/wx/config %{_libdir}/wx/config/gtk2* %{_datadir}/aclocal/* +%{_datadir}/bakefile/presets/* %files gl %defattr(-,root,root,-) @@ -218,6 +220,10 @@ popd %changelog +* Mon Nov 29 2010 Dan Horák - 2.8.11-3 +- added fix for crashes during DnD (#626012) +- bakefiles are included in devel subpackage (#626314) + * Thu Jul 1 2010 Dan Horák - 2.8.11-2 - rebuilt without the internal crash handler