diff options
author | Alexander Larsson <alexl@redhat.com> | 2010-11-16 20:28:54 +0100 |
---|---|---|
committer | Alexander Larsson <alexl@redhat.com> | 2010-11-25 22:09:29 +0100 |
commit | db288f32339a0a09effceb8b84662da335871b70 (patch) | |
tree | c813c4db11b9ae4111c3277896e1077d6c3efb5c /gdk/broadway/gdkdrawable-broadway.h | |
parent | f02b7c9ed209aa680f5735cc814790ec5437fd45 (diff) | |
download | gtk+-db288f32339a0a09effceb8b84662da335871b70.tar.gz |
[broadway] Ensure gdk_ref_cairo_surface object can be destroyed
If we return a direct ref that is not possible, since we own a ref to it.
This is problematic as the gdkwindow.c code uses destruction to track
outstanding surfaces.
We fix this by returning a subsurface.
Diffstat (limited to 'gdk/broadway/gdkdrawable-broadway.h')
-rw-r--r-- | gdk/broadway/gdkdrawable-broadway.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gdk/broadway/gdkdrawable-broadway.h b/gdk/broadway/gdkdrawable-broadway.h index 505a530e67..2a5b279879 100644 --- a/gdk/broadway/gdkdrawable-broadway.h +++ b/gdk/broadway/gdkdrawable-broadway.h @@ -53,6 +53,7 @@ struct _GdkDrawableImplBroadway GdkScreen *screen; cairo_surface_t *surface; cairo_surface_t *last_surface; + cairo_surface_t *ref_surface; }; struct _GdkDrawableImplBroadwayClass |