forked from pool/MozillaFirefox
5fcce29637
* Improved API support for m4v video playback * Users can opt-in to receive search suggestions from the Awesome Bar * WebRTC streaming on multiple monitors * User selectable second block list for Private Browsing's Tracking Protection security fixes: * MFSA 2015-134/CVE-2015-7201/CVE-2015-7202 Miscellaneous memory safety hazards * MFSA 2015-135/CVE-2015-7204 (bmo#1216130) Crash with JavaScript variable assignment with unboxed objects * MFSA 2015-136/CVE-2015-7207 (bmo#1185256) Same-origin policy violation using perfomance.getEntries and history navigation * MFSA 2015-137/CVE-2015-7208 (bmo#1191423) Firefox allows for control characters to be set in cookies * MFSA 2015-138/CVE-2015-7210 (bmo#1218326) Use-after-free in WebRTC when datachannel is used after being destroyed * MFSA 2015-139/CVE-2015-7212 (bmo#1222809) Integer overflow allocating extremely large textures * MFSA 2015-140/CVE-2015-7215 (bmo#1160890) Cross-origin information leak through web workers error events * MFSA 2015-141/CVE-2015-7211 (bmo#1221444) Hash in data URI is incorrectly parsed * MFSA 2015-142/CVE-2015-7218/CVE-2015-7219 (bmo#1194818, bmo#1194820) DOS due to malformed frames in HTTP/2 * MFSA 2015-143/CVE-2015-7216/CVE-2015-7217 (bmo#1197059, bmo#1203078) Linux file chooser crashes on malformed images due to flaws in Jasper library OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=473
153 lines
5.3 KiB
Diff
153 lines
5.3 KiB
Diff
# HG changeset patch
|
|
# Parent b7eb1ce0237d6125b75bc8ff1cb3afc328d6e78c
|
|
# User Steve Singer <steve@ssinger.info>
|
|
# Parent 4e6bb9847daccf128ad3eab9be087ef63f9b974c
|
|
Bug 1005535 - Get skia GPU building on big endian.
|
|
|
|
diff --git a/configure.in b/configure.in
|
|
--- a/configure.in
|
|
+++ b/configure.in
|
|
@@ -8208,21 +8208,21 @@ dnl Skia
|
|
dnl ========================================================
|
|
if test "$MOZ_ENABLE_SKIA"; then
|
|
AC_DEFINE(MOZ_ENABLE_SKIA)
|
|
AC_DEFINE(USE_SKIA)
|
|
if test "${MOZ_WIDGET_TOOLKIT}" = "android" -o x"$MOZ_WIDGET_TOOLKIT" = x"gonk"; then
|
|
AC_DEFINE(SK_BUILD_FOR_ANDROID_NDK)
|
|
fi
|
|
|
|
- if test "${CPU_ARCH}" != "ppc" -a "${CPU_ARCH}" != "ppc64" -a "${CPU_ARCH}" != "sparc" -a -z "$MOZ_DISABLE_SKIA_GPU" ; then
|
|
+ #if test "${CPU_ARCH}" != "ppc" -a "${CPU_ARCH}" != "ppc64" -a "${CPU_ARCH}" != "sparc" -a -z "$MOZ_DISABLE_SKIA_GPU" ; then
|
|
MOZ_ENABLE_SKIA_GPU=1
|
|
AC_DEFINE(USE_SKIA_GPU)
|
|
AC_SUBST(MOZ_ENABLE_SKIA_GPU)
|
|
- fi
|
|
+ #fi
|
|
fi
|
|
AC_SUBST(MOZ_ENABLE_SKIA)
|
|
|
|
dnl ========================================================
|
|
dnl Check for nss-shared-helper
|
|
dnl ========================================================
|
|
|
|
PKG_CHECK_MODULES(NSSHELPER, nss-shared-helper,
|
|
diff --git a/gfx/skia/trunk/include/config/SkUserConfig.h b/gfx/skia/trunk/include/config/SkUserConfig.h
|
|
--- a/gfx/skia/trunk/include/config/SkUserConfig.h
|
|
+++ b/gfx/skia/trunk/include/config/SkUserConfig.h
|
|
@@ -192,16 +192,17 @@
|
|
|
|
#if defined(SK_CPU_ARM32) || defined(SK_CPU_ARM64)
|
|
# define SK_BARRIERS_PLATFORM_H "skia/SkBarriers_arm.h"
|
|
#else
|
|
# define SK_BARRIERS_PLATFORM_H "skia/SkBarriers_x86.h"
|
|
#endif
|
|
|
|
// On all platforms we have this byte order
|
|
+
|
|
#define SK_A32_SHIFT 24
|
|
#define SK_R32_SHIFT 16
|
|
#define SK_G32_SHIFT 8
|
|
#define SK_B32_SHIFT 0
|
|
|
|
#define SK_ALLOW_STATIC_GLOBAL_INITIALIZERS 0
|
|
|
|
#define SK_SUPPORT_LEGACY_GETDEVICE
|
|
diff --git a/gfx/skia/trunk/include/core/SkColorPriv.h b/gfx/skia/trunk/include/core/SkColorPriv.h
|
|
--- a/gfx/skia/trunk/include/core/SkColorPriv.h
|
|
+++ b/gfx/skia/trunk/include/core/SkColorPriv.h
|
|
@@ -27,37 +27,27 @@
|
|
* For easier compatibility with Skia's GPU backend, we further restrict these
|
|
* to either (in memory-byte-order) RGBA or BGRA. Note that this "order" does
|
|
* not directly correspond to the same shift-order, since we have to take endianess
|
|
* into account.
|
|
*
|
|
* Here we enforce this constraint.
|
|
*/
|
|
|
|
-#ifdef SK_CPU_BENDIAN
|
|
- #define SK_RGBA_R32_SHIFT 24
|
|
- #define SK_RGBA_G32_SHIFT 16
|
|
- #define SK_RGBA_B32_SHIFT 8
|
|
- #define SK_RGBA_A32_SHIFT 0
|
|
|
|
- #define SK_BGRA_B32_SHIFT 24
|
|
- #define SK_BGRA_G32_SHIFT 16
|
|
- #define SK_BGRA_R32_SHIFT 8
|
|
- #define SK_BGRA_A32_SHIFT 0
|
|
-#else
|
|
#define SK_RGBA_R32_SHIFT 0
|
|
#define SK_RGBA_G32_SHIFT 8
|
|
#define SK_RGBA_B32_SHIFT 16
|
|
#define SK_RGBA_A32_SHIFT 24
|
|
|
|
#define SK_BGRA_B32_SHIFT 0
|
|
#define SK_BGRA_G32_SHIFT 8
|
|
#define SK_BGRA_R32_SHIFT 16
|
|
#define SK_BGRA_A32_SHIFT 24
|
|
-#endif
|
|
+
|
|
|
|
#if defined(SK_PMCOLOR_IS_RGBA) && defined(SK_PMCOLOR_IS_BGRA)
|
|
#error "can't define PMCOLOR to be RGBA and BGRA"
|
|
#endif
|
|
|
|
#define LOCAL_PMCOLOR_SHIFTS_EQUIVALENT_TO_RGBA \
|
|
(SK_A32_SHIFT == SK_RGBA_A32_SHIFT && \
|
|
SK_R32_SHIFT == SK_RGBA_R32_SHIFT && \
|
|
diff --git a/gfx/skia/trunk/include/core/SkImageInfo.h b/gfx/skia/trunk/include/core/SkImageInfo.h
|
|
--- a/gfx/skia/trunk/include/core/SkImageInfo.h
|
|
+++ b/gfx/skia/trunk/include/core/SkImageInfo.h
|
|
@@ -83,19 +83,20 @@ enum SkColorType {
|
|
|
|
kLastEnum_SkColorType = kIndex_8_SkColorType,
|
|
|
|
#if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
|
|
kN32_SkColorType = kBGRA_8888_SkColorType,
|
|
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
|
|
kN32_SkColorType = kRGBA_8888_SkColorType,
|
|
#else
|
|
-#error "SK_*32_SHFIT values must correspond to BGRA or RGBA byte order"
|
|
+ kN32_SkColorType = kBGRA_8888_SkColorType
|
|
#endif
|
|
|
|
+
|
|
#ifdef SK_SUPPORT_LEGACY_N32_NAME
|
|
kPMColor_SkColorType = kN32_SkColorType
|
|
#endif
|
|
};
|
|
|
|
static int SkColorTypeBytesPerPixel(SkColorType ct) {
|
|
static const uint8_t gSize[] = {
|
|
0, // Unknown
|
|
diff --git a/gfx/skia/trunk/include/gpu/GrTypes.h b/gfx/skia/trunk/include/gpu/GrTypes.h
|
|
--- a/gfx/skia/trunk/include/gpu/GrTypes.h
|
|
+++ b/gfx/skia/trunk/include/gpu/GrTypes.h
|
|
@@ -304,25 +304,23 @@ enum GrPixelConfig {
|
|
* Byte order is r, g, b, a. This color format is 32 bits per channel
|
|
*/
|
|
kRGBA_float_GrPixelConfig,
|
|
kLast_GrPixelConfig = kRGBA_float_GrPixelConfig
|
|
};
|
|
static const int kGrPixelConfigCnt = kLast_GrPixelConfig + 1;
|
|
|
|
// Aliases for pixel configs that match skia's byte order.
|
|
-#ifndef SK_CPU_LENDIAN
|
|
- #error "Skia gpu currently assumes little endian"
|
|
-#endif
|
|
+
|
|
#if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
|
|
static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
|
|
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
|
|
static const GrPixelConfig kSkia8888_GrPixelConfig = kRGBA_8888_GrPixelConfig;
|
|
#else
|
|
- #error "SK_*32_SHIFT values must correspond to GL_BGRA or GL_RGBA format."
|
|
+ static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
|
|
#endif
|
|
|
|
// Returns true if the pixel config is a GPU-specific compressed format
|
|
// representation.
|
|
static inline bool GrPixelConfigIsCompressed(GrPixelConfig config) {
|
|
switch (config) {
|
|
case kETC1_GrPixelConfig:
|
|
case kLATC_GrPixelConfig:
|