Backport a fix for virt-manager crash

https://bugzilla.redhat.com/show_bug.cgi?id=1130758
This commit is contained in:
Kalev Lember 2014-08-21 09:49:08 +02:00
parent 841cc85052
commit 3e39df02a4
2 changed files with 38 additions and 1 deletions

View File

@ -0,0 +1,30 @@
From 92f0d6ebf9b67729d8253e15fce77b0ad0375573 Mon Sep 17 00:00:00 2001
From: Simon Feltman <sfeltman@src.gnome.org>
Date: Wed, 20 Aug 2014 13:39:31 -0700
Subject: [PATCH] Skip marshalling NULL output arguments in Python closures
Skip marshalling optional output arguments which are passed NULL
as the memory location. This fixes fallout from bug 727004.
https://bugzilla.gnome.org/show_bug.cgi?id=735090
---
gi/pygi-closure.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/gi/pygi-closure.c b/gi/pygi-closure.c
index 15c6767..599503f 100644
--- a/gi/pygi-closure.c
+++ b/gi/pygi-closure.c
@@ -371,7 +371,8 @@ _pygi_closure_convert_arguments (PyGIInvokeState *state,
for (i = 0; i < _pygi_callable_cache_args_len (cache); i++) {
PyGIArgCache *arg_cache = g_ptr_array_index (cache->args_cache, i);
- if (arg_cache->direction & PYGI_DIRECTION_FROM_PYTHON) {
+ if (arg_cache->direction & PYGI_DIRECTION_FROM_PYTHON &&
+ state->arg_values[i].v_pointer) {
state->arg_pointers[i].v_pointer = state->arg_values[i].v_pointer;
state->arg_values[i] = *(GIArgument *) state->arg_values[i].v_pointer;
}
--
2.1.0

View File

@ -22,7 +22,7 @@
Name: pygobject3
Version: 3.13.90
Release: 1%{?dist}
Release: 2%{?dist}
License: LGPLv2+ and MIT
Group: Development/Languages
Summary: Python 2 bindings for GObject Introspection
@ -30,6 +30,9 @@ URL: https://live.gnome.org/PyGObject
#VCS: git:git://git.gnome.org/pygobject
Source: http://ftp.gnome.org/pub/GNOME/sources/pygobject/3.13/pygobject-%{version}.tar.xz
# Backported upstream patch
Patch0: 0001-Skip-marshalling-NULL-output-arguments-in-Python-clo.patch
BuildRequires: glib2-devel >= %{glib2_version}
BuildRequires: gobject-introspection-devel >= %{gobject_introspection_version}
BuildRequires: python2-devel >= %{python2_version}
@ -106,6 +109,7 @@ for use in Python 3 programs.
%prep
%setup -q -n pygobject-%{version}
%patch0 -p1
%if 0%{?with_python3}
rm -rf %{py3dir}
@ -211,6 +215,9 @@ xvfb-run make DESTDIR=$RPM_BUILD_ROOT check %{verbosity}
%endif # with_python3
%changelog
* Thu Aug 21 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.90-2
- Backport a fix for virt-manager crash (#1130758)
* Tue Aug 19 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.90-1
- Update to 3.13.90