r37120 - in /desktop/experimental/pygobject/debian: changelog patches/01_cairo_region.patch patches/series

mpitt at users.alioth.debian.org mpitt at users.alioth.debian.org
Fri Mar 22 06:12:46 UTC 2013


Author: mpitt
Date: Fri Mar 22 06:12:45 2013
New Revision: 37120

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=37120
Log:
Add 01_cairo_region.patch: Add a foreign type for cairo_region_t.
(LP: #1028115, bgo #667959)

Added:
    desktop/experimental/pygobject/debian/patches/01_cairo_region.patch
Modified:
    desktop/experimental/pygobject/debian/changelog
    desktop/experimental/pygobject/debian/patches/series

Modified: desktop/experimental/pygobject/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/pygobject/debian/changelog?rev=37120&op=diff
==============================================================================
--- desktop/experimental/pygobject/debian/changelog [utf-8] (original)
+++ desktop/experimental/pygobject/debian/changelog [utf-8] Fri Mar 22 06:12:45 2013
@@ -1,3 +1,10 @@
+pygobject (3.7.92-3) UNRELEASED; urgency=low
+
+  * Add 01_cairo_region.patch: Add a foreign type for cairo_region_t.
+    (LP: #1028115, bgo #667959)
+
+ -- Martin Pitt <martin.pitt at ubuntu.com>  Fri, 22 Mar 2013 07:11:51 +0100
+
 pygobject (3.7.92-2) experimental; urgency=low
 
   * debian/control.in:

Added: desktop/experimental/pygobject/debian/patches/01_cairo_region.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/pygobject/debian/patches/01_cairo_region.patch?rev=37120&op=file
==============================================================================
--- desktop/experimental/pygobject/debian/patches/01_cairo_region.patch (added)
+++ desktop/experimental/pygobject/debian/patches/01_cairo_region.patch [utf-8] Fri Mar 22 06:12:45 2013
@@ -1,0 +1,79 @@
+From 132daac42d49e14686b05e8dad64b3652084d240 Mon Sep 17 00:00:00 2001
+From: Shyouzou Sugitani <shy at users.sourceforge.jp>
+Date: Wed, 13 Jun 2012 23:44:11 +0900
+Subject: [PATCH] add a foreign type for cairo_region_t.
+
+* the patch in https://bugs.freedesktop.org/show_bug.cgi?id=44336
+  is required for pycairo
+
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=667959
+Bug-Ubuntu: https://launchpad.net/bugs/1028115
+---
+ gi/pygi-foreign-cairo.c |   44 ++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 44 insertions(+)
+
+Index: pygobject-3.7.5.1/gi/pygi-foreign-cairo.c
+===================================================================
+--- pygobject-3.7.5.1.orig/gi/pygi-foreign-cairo.c	2013-02-11 08:57:38.694078604 +0100
++++ pygobject-3.7.5.1/gi/pygi-foreign-cairo.c	2013-02-11 09:08:43.154048264 +0100
+@@ -185,6 +185,46 @@
+     Py_RETURN_NONE;
+ }
+ 
++#if PY_VERSION_HEX >= 0x03000000
++static PyObject *
++cairo_region_to_arg (PyObject        *value,
++                     GIInterfaceInfo *interface_info,
++                     GITransfer       transfer,
++                     GIArgument      *arg)
++{
++    cairo_region_t *region;
++
++    g_assert (transfer == GI_TRANSFER_NOTHING);
++
++    region = ( (PycairoRegion*) value)->region;
++    if (!region) {
++        PyErr_SetString (PyExc_ValueError, "Region instance wrapping a NULL region");
++        return NULL;
++    }
++
++    arg->v_pointer = region;
++    Py_RETURN_NONE;
++}
++
++static PyObject *
++cairo_region_from_arg (GIInterfaceInfo *interface_info, gpointer data)
++{
++    cairo_region_t *region = (cairo_region_t*) data;
++
++    cairo_region_reference (region);
++
++    return PycairoRegion_FromRegion (region);
++}
++
++static PyObject *
++cairo_region_release (GIBaseInfo *base_info,
++                      gpointer    struct_)
++{
++    cairo_region_destroy ( (cairo_region_t*) struct_);
++    Py_RETURN_NONE;
++}
++#endif
++
+ static PyMethodDef _gi_cairo_functions[] = { {0,} };
+ PYGLIB_MODULE_START(_gi_cairo, "_gi_cairo")
+ {
+@@ -220,5 +260,13 @@
+                                   cairo_font_options_to_arg,
+                                   cairo_font_options_from_arg,
+                                   cairo_font_options_release);
++
++#if PY_VERSION_HEX >= 0x03000000
++    pygi_register_foreign_struct ("cairo",
++                                  "Region",
++                                  cairo_region_to_arg,
++                                  cairo_region_from_arg,
++                                  cairo_region_release);
++#endif
+ }
+ PYGLIB_MODULE_END;

Modified: desktop/experimental/pygobject/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/pygobject/debian/patches/series?rev=37120&op=diff
==============================================================================
--- desktop/experimental/pygobject/debian/patches/series [utf-8] (original)
+++ desktop/experimental/pygobject/debian/patches/series [utf-8] Fri Mar 22 06:12:45 2013
@@ -1,0 +1,1 @@
+01_cairo_region.patch




More information about the pkg-gnome-commits mailing list