+++ /dev/null
-diff -aurN pycairo-1.1.6.orig/cairo/pycairo-pattern.c pycairo-1.1.6/cairo/pycairo-pattern.c
---- pycairo-1.1.6.orig/cairo/pycairo-pattern.c 2006-05-29 07:44:11.000000000 +0200
-+++ pycairo-1.1.6/cairo/pycairo-pattern.c 2006-06-11 09:17:26.000000000 +0200
-@@ -73,7 +73,8 @@
- type = &PycairoRadialGradient_Type;
- break;
- default:
-- ASSERT_NOT_REACHED;
-+ PyErr_SetString(CairoError, "Unsupported Pattern type");
-+ return NULL;
- }
-
- o = type->tp_alloc(type, 0);
-diff -aurN pycairo-1.1.6.orig/cairo/pycairo-private.h pycairo-1.1.6/cairo/pycairo-private.h
---- pycairo-1.1.6.orig/cairo/pycairo-private.h 2006-05-01 04:11:03.000000000 +0200
-+++ pycairo-1.1.6/cairo/pycairo-private.h 2006-06-11 09:17:26.000000000 +0200
-@@ -116,10 +116,4 @@
- } while (0)
- #endif /* PY_MAJOR_VERSION */
-
--#define ASSERT_NOT_REACHED \
--do { \
-- static const int NOT_REACHED = 0; \
-- assert (NOT_REACHED); \
--} while (0)
--
- #endif /* _PYCAIRO_PRIVATE_H_ */
-diff -aurN pycairo-1.1.6.orig/cairo/pycairo-surface.c pycairo-1.1.6/cairo/pycairo-surface.c
---- pycairo-1.1.6.orig/cairo/pycairo-surface.c 2006-05-28 03:58:52.000000000 +0200
-+++ pycairo-1.1.6/cairo/pycairo-surface.c 2006-06-11 09:17:26.000000000 +0200
-@@ -242,6 +242,18 @@
- Py_RETURN_NONE;
- }
-
-+static PyObject *
-+surface_set_fallback_resolution (PycairoSurface *o, PyObject *args)
-+{
-+ double x_ppi, y_ppi;
-+
-+ if (!PyArg_ParseTuple(args, "dd:Surface.set_fallback_resolution",
-+ &x_ppi, &y_ppi))
-+ return NULL;
-+ cairo_surface_set_fallback_resolution (o->surface, x_ppi, y_ppi);
-+ Py_RETURN_NONE;
-+}
-+
- #ifdef CAIRO_HAS_PNG_FUNCTIONS
- /* METH_O */
- static PyObject *
-@@ -291,6 +303,8 @@
- {"mark_dirty", (PyCFunction)surface_mark_dirty, METH_KEYWORDS },
- {"set_device_offset",(PyCFunction)surface_set_device_offset,
- METH_VARARGS },
-+ {"set_fallback_resolution",(PyCFunction)surface_set_fallback_resolution,
-+ METH_VARARGS },
- #ifdef CAIRO_HAS_PNG_FUNCTIONS
- {"write_to_png", (PyCFunction)surface_write_to_png, METH_O },
- #endif
-@@ -459,7 +473,8 @@
- stride = (width + 1) / 8;
- break;
- default:
-- ASSERT_NOT_REACHED;
-+ PyErr_SetString(CairoError, "Unknown format");
-+ return NULL;
- }
- }
- if (height * stride > buffer_len) {
-@@ -707,34 +722,22 @@
- cairo_pdf_surface_create (PyString_AsString(file),
- width_in_points, height_in_points),
- NULL);
--
-- } else { /* file or file-like object argument */
-- PyObject* writer = PyObject_GetAttrString (file, "write");
-- if (writer == NULL || !PyCallable_Check (writer)) {
-- Py_XDECREF(writer);
-- PyErr_SetString(PyExc_TypeError,
-+ }
-+ /* file or file-like object argument */
-+ PyObject* writer = PyObject_GetAttrString (file, "write");
-+ if (writer == NULL || !PyCallable_Check (writer)) {
-+ Py_XDECREF(writer);
-+ PyErr_SetString(PyExc_TypeError,
- "PDFSurface argument 1 must be a filename (str), file object, or an object "
- "that has a \"write\" method (like StringIO)");
-- return NULL;
-- }
-- Py_DECREF(writer);
--
-- return PycairoSurface_FromSurface (
-- cairo_pdf_surface_create_for_stream (_write_func,
-- file, width_in_points, height_in_points),
-- file);
-+ return NULL;
- }
--}
-+ Py_DECREF(writer);
-
--static PyObject *
--pdf_surface_set_dpi (PycairoPDFSurface *o, PyObject *args)
--{
-- double x_dpi, y_dpi;
--
-- if (!PyArg_ParseTuple(args, "dd:PDFSurface.set_dpi", &x_dpi, &y_dpi))
-- return NULL;
-- cairo_pdf_surface_set_dpi (o->surface, x_dpi, y_dpi);
-- Py_RETURN_NONE;
-+ return PycairoSurface_FromSurface (
-+ cairo_pdf_surface_create_for_stream (_write_func, file,
-+ width_in_points, height_in_points),
-+ file);
- }
-
- static PyObject *
-@@ -751,7 +754,6 @@
- }
-
- static PyMethodDef pdf_surface_methods[] = {
-- {"set_dpi", (PyCFunction)pdf_surface_set_dpi, METH_VARARGS },
- {"set_size", (PyCFunction)pdf_surface_set_size, METH_VARARGS },
- {NULL, NULL, 0, NULL},
- };
-@@ -824,22 +826,22 @@
- width_in_points, height_in_points),
- NULL);
-
-- } else { /* file or file-like object argument */
-- PyObject* writer = PyObject_GetAttrString (file, "write");
-- if (writer == NULL || !PyCallable_Check (writer)) {
-- Py_XDECREF(writer);
-- PyErr_SetString(PyExc_TypeError,
-+ }
-+ /* else: file or file-like object argument */
-+ PyObject* writer = PyObject_GetAttrString (file, "write");
-+ if (writer == NULL || !PyCallable_Check (writer)) {
-+ Py_XDECREF(writer);
-+ PyErr_SetString(PyExc_TypeError,
- "PSSurface argument 1 must be a filename (str), file object, or an object "
- "that has a \"write\" method (like StringIO)");
-- return NULL;
-- }
-- Py_DECREF(writer);
-+ return NULL;
-+ }
-+ Py_DECREF(writer);
-
-- return PycairoSurface_FromSurface (
-- cairo_ps_surface_create_for_stream (_write_func,
-- file, width_in_points, height_in_points),
-+ return PycairoSurface_FromSurface (
-+ cairo_ps_surface_create_for_stream (_write_func, file,
-+ width_in_points, height_in_points),
- file);
-- }
- }
-
- static PyObject *
-@@ -875,17 +877,6 @@
- }
-
- static PyObject *
--ps_surface_set_dpi (PycairoPSSurface *o, PyObject *args)
--{
-- double x_dpi, y_dpi;
--
-- if (!PyArg_ParseTuple(args, "dd:PSSurface.set_dpi", &x_dpi, &y_dpi))
-- return NULL;
-- cairo_ps_surface_set_dpi (o->surface, x_dpi, y_dpi);
-- Py_RETURN_NONE;
--}
--
--static PyObject *
- ps_surface_set_size (PycairoPSSurface *o, PyObject *args)
- {
- double width_in_points, height_in_points;
-@@ -902,7 +893,6 @@
- (PyCFunction)ps_surface_dsc_begin_page_setup, METH_NOARGS },
- {"dsc_begin_setup", (PyCFunction)ps_surface_dsc_begin_setup, METH_NOARGS },
- {"dsc_comment", (PyCFunction)ps_surface_dsc_comment, METH_VARARGS },
-- {"set_dpi", (PyCFunction)ps_surface_set_dpi, METH_VARARGS },
- {"set_size", (PyCFunction)ps_surface_set_size, METH_VARARGS },
- {NULL, NULL, 0, NULL},
- };
-@@ -974,34 +964,22 @@
- cairo_svg_surface_create (PyString_AsString(file),
- width_in_points, height_in_points),
- NULL);
--
-- } else { /* file or file-like object argument */
-- PyObject* writer = PyObject_GetAttrString (file, "write");
-- if (writer == NULL || !PyCallable_Check (writer)) {
-- Py_XDECREF(writer);
-- PyErr_SetString(PyExc_TypeError,
-+ }
-+ /* else: file or file-like object argument */
-+ PyObject* writer = PyObject_GetAttrString (file, "write");
-+ if (writer == NULL || !PyCallable_Check (writer)) {
-+ Py_XDECREF(writer);
-+ PyErr_SetString(PyExc_TypeError,
- "SVGSurface argument 1 must be a filename (str), file object, or an object "
- "that has a \"write\" method (like StringIO)");
-- return NULL;
-- }
-- Py_DECREF(writer);
--
-- return PycairoSurface_FromSurface (
-- cairo_svg_surface_create_for_stream (_write_func,
-- file, width_in_points, height_in_points),
-- file);
-+ return NULL;
- }
--}
--
--static PyObject *
--svg_surface_set_dpi (PycairoSVGSurface *o, PyObject *args)
--{
-- double x_dpi, y_dpi;
-+ Py_DECREF(writer);
-
-- if (!PyArg_ParseTuple(args, "dd:SVGSurface.set_dpi", &x_dpi, &y_dpi))
-- return NULL;
-- cairo_svg_surface_set_dpi (o->surface, x_dpi, y_dpi);
-- Py_RETURN_NONE;
-+ return PycairoSurface_FromSurface (
-+ cairo_svg_surface_create_for_stream (_write_func, file,
-+ width_in_points, height_in_points),
-+ file);
- }
-
- static PyMethodDef svg_surface_methods[] = {
-@@ -1010,7 +988,6 @@
- * cairo_svg_get_versions
- * cairo_svg_version_to_string
- */
-- {"set_dpi", (PyCFunction)svg_surface_set_dpi, METH_VARARGS },
- {NULL, NULL, 0, NULL},
- };
-