[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
philn at webkit.org
philn at webkit.org
Wed Dec 22 12:54:36 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit d752a97f15c96da7952378befa432467bfdea26e
Author: philn at webkit.org <philn at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Sep 1 14:12:26 2010 +0000
2010-08-27 Philippe Normand <pnormand at igalia.com>
Reviewed by Xan Lopez.
[GStreamer] ImageGStreamer doesn't need to hold a Cairo surface
https://bugs.webkit.org/show_bug.cgi?id=44757
Pass the cairo surface to the BitmapImage constructor which will
handle its life-cycle.
* platform/graphics/gstreamer/ImageGStreamer.h:
* platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
(ImageGStreamer::ImageGStreamer):
(ImageGStreamer::~ImageGStreamer):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@66600 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index e2d36eb..a2a721e 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2010-08-27 Philippe Normand <pnormand at igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GStreamer] ImageGStreamer doesn't need to hold a Cairo surface
+ https://bugs.webkit.org/show_bug.cgi?id=44757
+
+ Pass the cairo surface to the BitmapImage constructor which will
+ handle its life-cycle.
+
+ * platform/graphics/gstreamer/ImageGStreamer.h:
+ * platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
+ (ImageGStreamer::ImageGStreamer):
+ (ImageGStreamer::~ImageGStreamer):
+
2010-08-30 Patrick Gansterer <paroga at paroga.com>
Reviewed by Dirk Schulze.
diff --git a/WebCore/platform/graphics/gstreamer/ImageGStreamer.h b/WebCore/platform/graphics/gstreamer/ImageGStreamer.h
index 3d6d74a..9288df9 100644
--- a/WebCore/platform/graphics/gstreamer/ImageGStreamer.h
+++ b/WebCore/platform/graphics/gstreamer/ImageGStreamer.h
@@ -51,7 +51,6 @@ class ImageGStreamer : public RefCounted<ImageGStreamer> {
#if PLATFORM(CAIRO)
ImageGStreamer(GstBuffer*&, IntSize, cairo_format_t&);
- cairo_surface_t* m_surface;
#endif
#if PLATFORM(MAC)
diff --git a/WebCore/platform/graphics/gstreamer/ImageGStreamerCairo.cpp b/WebCore/platform/graphics/gstreamer/ImageGStreamerCairo.cpp
index 6f975a4..aeaee19 100644
--- a/WebCore/platform/graphics/gstreamer/ImageGStreamerCairo.cpp
+++ b/WebCore/platform/graphics/gstreamer/ImageGStreamerCairo.cpp
@@ -49,13 +49,12 @@ PassRefPtr<ImageGStreamer> ImageGStreamer::createImage(GstBuffer* buffer)
ImageGStreamer::ImageGStreamer(GstBuffer*& buffer, IntSize size, cairo_format_t& cairoFormat)
: m_image(0)
- , m_surface(0)
{
- m_surface = cairo_image_surface_create_for_data(GST_BUFFER_DATA(buffer), cairoFormat,
+ cairo_surface_t* surface = cairo_image_surface_create_for_data(GST_BUFFER_DATA(buffer), cairoFormat,
size.width(), size.height(),
cairo_format_stride_for_width(cairoFormat, size.width()));
- ASSERT(cairo_surface_status(m_surface) == CAIRO_STATUS_SUCCESS);
- m_image = BitmapImage::create(m_surface);
+ ASSERT(cairo_surface_status(surface) == CAIRO_STATUS_SUCCESS);
+ m_image = BitmapImage::create(surface);
}
ImageGStreamer::~ImageGStreamer()
@@ -64,9 +63,4 @@ ImageGStreamer::~ImageGStreamer()
m_image.clear();
m_image = 0;
-
- if (m_surface && cairo_surface_get_reference_count(m_surface))
- cairo_surface_destroy(m_surface);
-
- m_surface = 0;
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list