summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin8.patch33
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-1.2.5-tests-build.patch22
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-1.2.7-libpng15.patch36
3 files changed, 91 insertions, 0 deletions
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin8.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin8.patch
new file mode 100644
index 0000000..cf25b5d
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin8.patch
@@ -0,0 +1,33 @@
+https://bugs.webkit.org/show_bug.cgi?id=39847
+
+additionally, also on Darwin8 glib stuff includes system headers that
+use isascii, so we can't have it die on that.
+
+--- JavaScriptCore/wtf/FastMalloc.cpp
++++ JavaScriptCore/wtf/FastMalloc.cpp
+@@ -1381,14 +1381,12 @@
+ // Bytes allocated from system
+ uint64_t system_bytes_;
+
+-#if USE_BACKGROUND_THREAD_TO_SCAVENGE_MEMORY
+ // Number of pages kept in free lists that are still committed.
+ Length free_committed_pages_;
+
+ // Minimum number of free committed pages since last scavenge. (Can be 0 if
+ // we've committed new pages since the last scavenge.)
+ Length min_free_committed_pages_since_last_scavenge_;
+-#endif
+
+ bool GrowHeap(Length n);
+
+--- WebCore/config.h
++++ WebCore/config.h
+@@ -125,7 +125,7 @@
+ // this breaks compilation of <QFontDatabase>, at least, so turn it off for now
+ // Also generates errors on wx on Windows, presumably because these functions
+ // are used from wx headers.
+-#if !PLATFORM(QT) && !PLATFORM(WX) && !PLATFORM(CHROMIUM)
++#if !PLATFORM(QT) && !PLATFORM(WX) && !PLATFORM(CHROMIUM) && !defined(BUILDING_ON_TIGER)
+ #include <wtf/DisallowCType.h>
+ #endif
+
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-tests-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-tests-build.patch
new file mode 100644
index 0000000..0d9e144
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-tests-build.patch
@@ -0,0 +1,22 @@
+Do not build tests if not requested to.
+
+--- a/GNUmakefile.am 2010-12-21 17:23:58.000000000 +0100
++++ b/GNUmakefile.am 2010-12-21 17:24:28.000000000 +0100
+@@ -46,7 +46,8 @@
+
+ # Libraries and support components
+ bin_PROGRAMS :=
++check_PROGRAMS :=
+ noinst_PROGRAMS :=
+ noinst_HEADERS :=
+ noinst_LTLIBRARIES :=
+ lib_LIBRARIES :=
+@@ -541,7 +541,7 @@
+ include WebKit/gtk/po/GNUmakefile.am
+
+ # Build unit tests
+-noinst_PROGRAMS += $(TEST_PROGS)
++check_PROGRAMS += $(TEST_PROGS)
+
+ webkit_tests_cflags = \
+ -fno-strict-aliasing \
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.2.7-libpng15.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.2.7-libpng15.patch
new file mode 100644
index 0000000..5674861
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.2.7-libpng15.patch
@@ -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());
+ }