1 |
pacho 13/09/29 10:21:40 |
2 |
|
3 |
Added: pygtk-2.24.0-fix-leaks.patch |
4 |
pygtk-2.24.0-test-fail.patch |
5 |
Log: |
6 |
Upstream patch for fixing leaks, make tests exit with right result |
7 |
|
8 |
(Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key A188FBD4) |
9 |
|
10 |
Revision Changes Path |
11 |
1.1 dev-python/pygtk/files/pygtk-2.24.0-fix-leaks.patch |
12 |
|
13 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-python/pygtk/files/pygtk-2.24.0-fix-leaks.patch?rev=1.1&view=markup |
14 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-python/pygtk/files/pygtk-2.24.0-fix-leaks.patch?rev=1.1&content-type=text/plain |
15 |
|
16 |
Index: pygtk-2.24.0-fix-leaks.patch |
17 |
=================================================================== |
18 |
From eca72baa5616fbe4dbebea43c7e5940847dc5ab8 Mon Sep 17 00:00:00 2001 |
19 |
From: Owen W. Taylor <otaylor@××××××××.net> |
20 |
Date: Tue, 27 Sep 2011 04:17:52 +0000 |
21 |
Subject: Fix leaks of Pango objects |
22 |
|
23 |
Gtk.PrintContext.create_pango_context() |
24 |
Gtk.PrintContext.create_pango_layout() |
25 |
pangocairo.CairoContext.create_layout() |
26 |
|
27 |
were leaking the objects they returned. |
28 |
|
29 |
https://bugzilla.gnome.org/show_bug.cgi?id=660216 |
30 |
--- |
31 |
diff --git a/gtk/gtk-2.10.defs b/gtk/gtk-2.10.defs |
32 |
index 69c7e0c..faa45e1 100644 |
33 |
--- a/gtk/gtk-2.10.defs |
34 |
+++ b/gtk/gtk-2.10.defs |
35 |
@@ -1388,12 +1388,14 @@ |
36 |
(define-method create_pango_context |
37 |
(of-object "GtkPrintContext") |
38 |
(c-name "gtk_print_context_create_pango_context") |
39 |
+ (caller-owns-return #t) |
40 |
(return-type "PangoContext*") |
41 |
) |
42 |
|
43 |
(define-method create_pango_layout |
44 |
(of-object "GtkPrintContext") |
45 |
(c-name "gtk_print_context_create_pango_layout") |
46 |
+ (caller-owns-return #t) |
47 |
(return-type "PangoLayout*") |
48 |
) |
49 |
|
50 |
diff --git a/pangocairo.override b/pangocairo.override |
51 |
index bb923e6..5101107 100644 |
52 |
--- a/pangocairo.override |
53 |
+++ b/pangocairo.override |
54 |
@@ -118,11 +118,16 @@ _wrap_pango_cairo_update_context(PyGObject *self, PyObject *args, PyObject *kwar |
55 |
static PyObject * |
56 |
_wrap_pango_cairo_create_layout(PyGObject *self) |
57 |
{ |
58 |
- PangoLayout *ret; |
59 |
+ PangoLayout *layout; |
60 |
+ PyObject *ret; |
61 |
|
62 |
- ret = pango_cairo_create_layout(PycairoContext_GET(self)); |
63 |
+ layout = pango_cairo_create_layout(PycairoContext_GET(self)); |
64 |
/* pygobject_new handles NULL checking */ |
65 |
- return pygobject_new((GObject *)ret); |
66 |
+ ret = pygobject_new((GObject *)layout); |
67 |
+ if (layout) |
68 |
+ g_object_unref(layout); |
69 |
+ |
70 |
+ return ret; |
71 |
} |
72 |
|
73 |
static PyObject * |
74 |
-- |
75 |
cgit v0.9.2 |
76 |
|
77 |
|
78 |
|
79 |
1.1 dev-python/pygtk/files/pygtk-2.24.0-test-fail.patch |
80 |
|
81 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-python/pygtk/files/pygtk-2.24.0-test-fail.patch?rev=1.1&view=markup |
82 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-python/pygtk/files/pygtk-2.24.0-test-fail.patch?rev=1.1&content-type=text/plain |
83 |
|
84 |
Index: pygtk-2.24.0-test-fail.patch |
85 |
=================================================================== |
86 |
--- tests/runtests.py |
87 |
+++ tests/runtests.py |
88 |
@@ -41,4 +41,5 @@ |
89 |
suite.addTest(loader.loadTestsFromName(name)) |
90 |
|
91 |
testRunner = unittest.TextTestRunner() |
92 |
-testRunner.run(suite) |
93 |
+result = testRunner.run(suite) |
94 |
+sys.exit(not result.wasSuccessful()) |