]> git.pld-linux.org Git - packages/gtk-webkit.git/commitdiff
- rel 10; png fix WEBKIT_1_2 auto/th/gtk-webkit-1_2_7-10 auto/ti/gtk-webkit-1_2_7-10
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Fri, 10 Feb 2012 11:36:47 +0000 (11:36 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    gtk-webkit.spec -> 1.113
    webkit-gtk-1.2.7-libpng15.patch -> 1.1

gtk-webkit.spec
webkit-gtk-1.2.7-libpng15.patch [new file with mode: 0644]

index e032be95764676ec538a541ffc60be3d387b569c..8cd7947e835167e19bead85e518692c1c270bc81 100644 (file)
@@ -7,12 +7,13 @@ Summary:      Port of WebKit embeddable web component to GTK+
 Summary(pl.UTF-8):     Port osadzalnego komponentu WWW WebKit do GTK+
 Name:          gtk-webkit
 Version:       1.2.7
-Release:       9
+Release:       10
 License:       BSD-like
 Group:         X11/Libraries
 Source0:       http://webkitgtk.org/webkit-%{version}.tar.gz
 # Source0-md5: 25c7e548b65aeb6d83c0182c32ef0927
 Patch0:                gobject-introspection.patch
+Patch1:                webkit-gtk-1.2.7-libpng15.patch
 URL:           http://webkitgtk.org/
 BuildRequires: autoconf >= 2.59
 BuildRequires: automake
@@ -96,6 +97,7 @@ Pliki programistyczne WebKit.
 %prep
 %setup -q -n webkit-%{version}
 %patch0 -p1
+%patch1 -p0
 
 %build
 %{__gtkdocize}
diff --git a/webkit-gtk-1.2.7-libpng15.patch b/webkit-gtk-1.2.7-libpng15.patch
new file mode 100644 (file)
index 0000000..5674861
--- /dev/null
@@ -0,0 +1,36 @@
+--- WebCore/platform/image-decoders/png/PNGImageDecoder.cpp
++++ WebCore/platform/image-decoders/png/PNGImageDecoder.cpp
+@@ -242,9 +242,9 @@
+     png_structp png = m_reader->pngPtr();
+     png_infop info = m_reader->infoPtr();
+-    png_uint_32 width = png->width;
+-    png_uint_32 height = png->height;
++    png_uint_32 width = png_get_image_width(png, info);
++    png_uint_32 height = png_get_image_height(png, info);
+     
+     // Protect against large images.
+-    if (png->width > cMaxPNGSize || png->height > cMaxPNGSize) {
++    if (width > cMaxPNGSize || height > cMaxPNGSize) {
+         longjmp(JMPBUF(png), 1);
+         return;
+@@ -319,7 +319,12 @@
+     if (m_reader->decodingSizeOnly()) {
+-        // If we only needed the size, halt the reader.     
++        // If we only needed the size, halt the reader.
++#if defined(PNG_LIBPNG_VER_MAJOR) && defined(PNG_LIBPNG_VER_MINOR) && (PNG_LIBPNG_VER_MAJOR > 1 || (PNG_LIBPNG_VER_MAJOR == 1 && PNG_LIBPNG_VER_MINOR >= 5))
++        // '0' argument to png_process_data_pause means: Do not cache unprocessed data.
++        m_reader->setReadOffset(m_reader->currentBufferSize() - png_process_data_pause(png, 0));
++#else
+         m_reader->setReadOffset(m_reader->currentBufferSize() - png->buffer_size);
+         png->buffer_size = 0;
++#endif
+     }
+ }
+@@ -344,5 +349,5 @@
+         buffer.setOriginalFrameRect(IntRect(IntPoint(), size()));
+-        if (m_reader->pngPtr()->interlaced)
++        if (png_get_interlace_type(m_reader->pngPtr(), m_reader->infoPtr()) != PNG_INTERLACE_NONE)
+             m_reader->createInterlaceBuffer((m_reader->hasAlpha() ? 4 : 3) * size().width() * size().height());
+     }
This page took 0.108922 seconds and 4 git commands to generate.