Re: [PATCH] xcb: make use of _cairo_surface_is_xcb to check for surface type
RAVI NANJUNDAPPA <[email protected]>
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <[email protected]> |
Thank you Bryce for committing the changes. Thanks and Best Regards, N Ravi > -----Original Message----- > From: Bryce W. Harrington [mailto:[email protected]] > Sent: Monday, July 07, 2014 4:24 PM > To: RAVI NANJUNDAPPA > Cc: 'Uli Schlachter'; [email protected] > Subject: Re: [cairo] [PATCH] xcb: make use of _cairo_surface_is_xcb to check > for surface type > > On Thu, Jul 03, 2014 at 05:28:49PM +0530, RAVI NANJUNDAPPA wrote: > > Thank you Uli for reviewing this patch. > > Please find attached the patch updated with the changes to take care > > of the cairo coding style. > > Looks good, pushed. > > > Thanks and Best Regards, > > N Ravi > > > > > -----Original Message----- > > > From: Uli Schlachter [mailto:[email protected]] > > > Sent: Thursday, July 03, 2014 5:18 PM > > > To: RAVI NANJUNDAPPA; [email protected] > > > Subject: Re: [cairo] [PATCH] xcb: make use of _cairo_surface_is_xcb > > > to > > check > > > for surface type > > > > > > On 02.07.2014 10:46, RAVI NANJUNDAPPA wrote: > > > > Hi, > > > > > > > > Please find attached the updated patch incorporated with review > > > > comments from Uli. > > > > Thanking him for taking time to review the patch. > > > > Please help me in reviewing the attached patch. > > > > > > > > Thanks and Best Regards, > > > > N Ravi > > > > > > > [...] > > > > > > With one minor comment: > > > > > > Reviewed-by: Uli Schlachter <[email protected]> > > > > > > > diff --git a/src/cairo-xcb-surface.c b/src/cairo-xcb-surface.c > > > > index > > > > c900edc..3b0c422 100644 > > > > --- a/src/cairo-xcb-surface.c > > > > +++ b/src/cairo-xcb-surface.c > > > > @@ -1432,7 +1432,7 @@ cairo_xcb_surface_set_size (cairo_surface_t > > > *abstract_surface, > > > > } > > > > > > > > > > > > - if (abstract_surface->type != CAIRO_SURFACE_TYPE_XCB) { > > > > + if (!_cairo_surface_is_xcb(abstract_surface)) { > > > > _cairo_surface_set_error (abstract_surface, > > > > _cairo_error > > > (CAIRO_STATUS_SURFACE_TYPE_MISMATCH)); > > > > return; > > > > > > Here (and in the other change in cairo-xcb-surface.c) it should be "( !" > > instead > > > of "(!". Just to match the normal cairo coding style. > > > > > > Uli > > > -- > > > Homophobia - The fear that another man will treat you the way you > > > treat women. > > > [0;0m>From a8451cfc2fb2aed2a28ec11510bde0cc94f56d78 Mon Sep 17 > > 00:00:00 2001[0;0m > > [0;0mFrom: Ravi Nanjundappa <[email protected]>[0;0m > > [0;0mDate: Wed, 2 Jul 2014 14:13:58 +0530[0;0m > > [0;0mSubject: [PATCH] xcb: make use of _cairo_surface_is_xcb to check > > for surface[0;0m [0;0m type[0;0m [0;0m[0;0m [0;0mIntroduced a > > new inline function _cairo_surface_is_xcb() as similar to[0;0m > > [0;0m_cairo_surface_is_image() and used the same to check for xcb > > surface[0;0m [0;0mtype[0;0m [0;0m[0;0m > > [0;0mSigned-off-by: Ravi Nanjundappa <[email protected]>[0;0m > > [0;32m---[0;0m > > [0;0m src/cairo-xcb-private.h | 15 +++++++++++++++[0;0m > > [0;0m src/cairo-xcb-surface-core.c | 2 +-[0;0m > > [0;0m src/cairo-xcb-surface-render.c | 2 +-[0;0m > > [0;0m src/cairo-xcb-surface.c | 4 ++--[0;0m > > [0;0m 4 files changed, 19 insertions(+), 4 deletions(-)[0;0m > > [0;0m[0;0m [0;34mdiff --git a/src/cairo-xcb-private.h > > b/src/cairo-xcb-private.h[0;0m [0;0mindex 5f04803..134100a > > 100644[0;0m > > [0;32m--- a/src/cairo-xcb-private.h[0;0m [1;32m+++ > > b/src/cairo-xcb-private.h[0;0m [1;34m@@ -267,6 +267,21 @@ enum > > {[0;0m [0;0m [0;0m [0;0m cairo_private extern const > > cairo_surface_backend_t _cairo_xcb_surface_backend;[0;0m [0;0m > > [0;0m [1;32m+/**[0;0m [1;32m+ * _cairo_surface_is_xcb:[0;0m > > [1;32m+ * @surface: a #cairo_surface_t[0;0m [1;32m+ *[0;0m > > [1;32m+ * Checks if a surface is an #cairo_xcb_surface_t[0;0m > > [1;32m+ *[0;0m [1;32m+ * Return value: %TRUE if the surface is an > > xcb surface[0;0m [1;32m+ **/[0;0m [1;32m+static inline > > cairo_bool_t[0;0m [1;32m+_cairo_surface_is_xcb (const > > cairo_surface_t *surface)[0;0m [1;32m+{[0;0m > > [1;32m+ /* _cairo_surface_nil sets a NULL backend so be safe */[0;0m > > [1;32m+ return surface->backend && surface->backend->type == > CAIRO_SURFACE_TYPE_XCB;[0;0m > > [1;32m+}[0;0m > > [1;32m+[0;0m > > [0;0m cairo_private cairo_xcb_connection_t *[0;0m [0;0m > > _cairo_xcb_connection_get (xcb_connection_t *connection);[0;0m > [0;0m > > [0;0m [0;34mdiff --git a/src/cairo-xcb-surface-core.c > > b/src/cairo-xcb-surface-core.c[0;0m > > [0;0mindex c608c9a..545fd28 100644[0;0m > > [0;32m--- a/src/cairo-xcb-surface-core.c[0;0m > > [1;32m+++ b/src/cairo-xcb-surface-core.c[0;0m > > [1;34m@@ -406,7 +406,7 @@ _cairo_xcb_surface_pixmap > (cairo_xcb_surface_t *target,[0;0m > > [0;0m if (pixmap != NULL && pixmap->screen == target->screen)[0;0m > > [0;0m return (cairo_xcb_pixmap_t *) cairo_surface_reference > (&pixmap->base);[0;0m > > [0;0m [0;0m > > [0;32m- if (source->type == CAIRO_SURFACE_TYPE_XCB &&[0;0m > > [1;32m+ if (_cairo_surface_is_xcb(source) &&[0;0m > > [0;0m ((cairo_xcb_surface_t *) source)->screen == target- > >screen)[0;0m > > [0;0m {[0;0m > > [0;0m cairo_xcb_surface_t *xcb_source = (cairo_xcb_surface_t *) > source;[0;0m > > [0;34mdiff --git a/src/cairo-xcb-surface-render.c > > b/src/cairo-xcb-surface-render.c[0;0m > > [0;0mindex 75455e5..3f2fc43 100644[0;0m > > [0;32m--- a/src/cairo-xcb-surface-render.c[0;0m > > [1;32m+++ b/src/cairo-xcb-surface-render.c[0;0m > > [1;34m@@ -1154,7 +1154,7 @@ _cairo_xcb_surface_picture > > (cairo_xcb_surface_t *target,[0;0m [0;0m [0;0m > > [0;0m if (source->type == CAIRO_SURFACE_TYPE_XCB)[0;0m > > [0;0m {[0;0m > > [0;32m- if (source->backend->type == CAIRO_SURFACE_TYPE_XCB) > {[0;0m > > [1;32m+ if (_cairo_surface_is_xcb(source)) {[0;0m > > [0;0m cairo_xcb_surface_t *xcb = (cairo_xcb_surface_t *) > source;[0;0m > > [0;0m if (xcb->screen == target->screen && xcb->fallback == > NULL) {[0;0m > > [0;0m picture = _copy_to_picture ((cairo_xcb_surface_t *) > source);[0;0m > > [0;34mdiff --git a/src/cairo-xcb-surface.c > > b/src/cairo-xcb-surface.c[0;0m [0;0mindex c900edc..02e7a19 > > 100644[0;0m > > [0;32m--- a/src/cairo-xcb-surface.c[0;0m [1;32m+++ > > b/src/cairo-xcb-surface.c[0;0m [1;34m@@ -1432,7 +1432,7 @@ > > cairo_xcb_surface_set_size (cairo_surface_t *abstract_surface,[0;0m > > [0;0m }[0;0m > > [0;0m [0;0m > > [0;0m [0;0m > > [0;32m- if (abstract_surface->type != CAIRO_SURFACE_TYPE_XCB) > {[0;0m > > [1;32m+ if ( !_cairo_surface_is_xcb(abstract_surface)) {[0;0m > > [0;0m _cairo_surface_set_error (abstract_surface,[0;0m > > [0;0m _cairo_error > (CAIRO_STATUS_SURFACE_TYPE_MISMATCH));[0;0m > > [0;0m return;[0;0m > > [1;34m@@ -1486,7 +1486,7 @@ cairo_xcb_surface_set_drawable > (cairo_surface_t *abstract_surface,[0;0m > > [0;0m }[0;0m > > [0;0m [0;0m > > [0;0m [0;0m > > [0;32m- if (abstract_surface->type != CAIRO_SURFACE_TYPE_XCB) > {[0;0m > > [1;32m+ if ( !_cairo_surface_is_xcb(abstract_surface)) {[0;0m > > [0;0m _cairo_surface_set_error (abstract_surface,[0;0m > > [0;0m _cairo_error > (CAIRO_STATUS_SURFACE_TYPE_MISMATCH));[0;0m > > [0;0m return;[0;0m > > [0;32m-- [0;0m > > [0;0m1.7.9.5[0;0m > > [0;0m[0;0m > > > -- > > cairo mailing list > > [email protected] > > http://lists.cairographics.org/mailman/listinfo/cairo -- cairo mailing list [email protected] http://lists.cairographics.org/mailman/listinfo/cairo