chromium-brovser:ver.bump
This commit is contained in:
Regular → Executable
+1
-3
@@ -34,7 +34,6 @@ def setup():
|
||||
use_gnome_keyring=false\
|
||||
use_gold=false \
|
||||
enable_hangout_services_extension=true \
|
||||
use_gconf=false \
|
||||
enable_widevine=true \
|
||||
linux_use_bundled_binutils=false \
|
||||
is_debug=false \
|
||||
@@ -46,8 +45,7 @@ def setup():
|
||||
proprietary_codecs=true \
|
||||
link_pulseaudio=true \
|
||||
use_custom_libcxx=false \
|
||||
enable_swiftshader=false \
|
||||
use_gtk3=true'
|
||||
enable_swiftshader=false'
|
||||
|
||||
shelltools.system("tools/gn/bootstrap/bootstrap.py --gn-gen-args '%s'"% opt)
|
||||
shelltools.system("out/Release/gn gen out/Release --args='%s'"% opt)
|
||||
|
||||
@@ -1,170 +0,0 @@
|
||||
From 6cdb5f2ad7684302a8a66217462d2aef4c5f4632 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Wagner <bungeman@behemoth.cnc.corp.google.com>
|
||||
Date: Thu, 15 Jun 2017 10:43:17 -0400
|
||||
Subject: [PATCH] Clip FreeType glyph bitmap to mask.
|
||||
|
||||
Skia has for some time assumed that when using FT_Render_Glyph with one
|
||||
of the LCD render modes that one extra pixel would be applied to each
|
||||
side of the resulting bitmap. FreieType has changed to make this more
|
||||
conservative when possible, so the pre-allocated SkMask and the generated
|
||||
FT_Bitmap may no longer agree on the size and origin.
|
||||
|
||||
This change ensures the SkMask and FT_Bitmap are the same size and their
|
||||
origins align. This is not an ideal long term fix, but is both simple and
|
||||
localized for easy and quick back-porting, should that become necessary.
|
||||
|
||||
BUG=skia:6663
|
||||
|
||||
Change-Id: I49ec8f45376be8d867e8aef54eab79537731c310
|
||||
Reviewed-on: https://skia-review.googlesource.com/20327
|
||||
Reviewed-by: Herb Derby <herb@google.com>
|
||||
Commit-Queue: Ben Wagner <bungeman@google.com>
|
||||
---
|
||||
src/ports/SkFontHost_FreeType_common.cpp | 100 +++++++++++++++++++++++++------
|
||||
1 file changed, 83 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp b/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp
|
||||
index 9df7268bb4..a216fdb29c 100644
|
||||
--- a/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp
|
||||
+++ b/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp
|
||||
@@ -395,8 +395,6 @@ void SkScalerContext_FreeType_Base::generateGlyphImage(
|
||||
switch ( face->glyph->format ) {
|
||||
case FT_GLYPH_FORMAT_OUTLINE: {
|
||||
FT_Outline* outline = &face->glyph->outline;
|
||||
- FT_BBox bbox;
|
||||
- FT_Bitmap target;
|
||||
|
||||
int dx = 0, dy = 0;
|
||||
if (fRec.fFlags & SkScalerContext::kSubpixelPositioning_Flag) {
|
||||
@@ -405,36 +403,97 @@ void SkScalerContext_FreeType_Base::generateGlyphImage(
|
||||
// negate dy since freetype-y-goes-up and skia-y-goes-down
|
||||
dy = -dy;
|
||||
}
|
||||
- FT_Outline_Get_CBox(outline, &bbox);
|
||||
- /*
|
||||
- what we really want to do for subpixel is
|
||||
- offset(dx, dy)
|
||||
- compute_bounds
|
||||
- offset(bbox & !63)
|
||||
- but that is two calls to offset, so we do the following, which
|
||||
- achieves the same thing with only one offset call.
|
||||
- */
|
||||
- FT_Outline_Translate(outline, dx - ((bbox.xMin + dx) & ~63),
|
||||
- dy - ((bbox.yMin + dy) & ~63));
|
||||
+
|
||||
+ memset(glyph.fImage, 0, glyph.rowBytes() * glyph.fHeight);
|
||||
|
||||
if (SkMask::kLCD16_Format == glyph.fMaskFormat) {
|
||||
+ FT_Outline_Translate(outline, dx, dy);
|
||||
FT_Error err = FT_Render_Glyph(face->glyph, doVert ? FT_RENDER_MODE_LCD_V :
|
||||
FT_RENDER_MODE_LCD);
|
||||
if (err) {
|
||||
SK_TRACEFTR(err, "Could not render glyph.");
|
||||
- sk_bzero(glyph.fImage, glyph.computeImageSize());
|
||||
return;
|
||||
}
|
||||
+
|
||||
SkMask mask;
|
||||
glyph.toMask(&mask);
|
||||
+#ifdef SK_SHOW_TEXT_BLIT_COVERAGE
|
||||
+ memset(mask.fImage, 0x80, mask.fBounds.height() * mask.fRowBytes);
|
||||
+#endif
|
||||
+ FT_GlyphSlotRec& ftGlyph = *face->glyph;
|
||||
+
|
||||
+ if (!SkIRect::Intersects(mask.fBounds,
|
||||
+ SkIRect::MakeXYWH( ftGlyph.bitmap_left,
|
||||
+ -ftGlyph.bitmap_top,
|
||||
+ ftGlyph.bitmap.width,
|
||||
+ ftGlyph.bitmap.rows)))
|
||||
+ {
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ // If the FT_Bitmap extent is larger, discard bits of the bitmap outside the mask.
|
||||
+ // If the SkMask extent is larger, shrink mask to fit bitmap (clearing discarded).
|
||||
+ unsigned char* origBuffer = ftGlyph.bitmap.buffer;
|
||||
+ // First align the top left (origin).
|
||||
+ if (-ftGlyph.bitmap_top < mask.fBounds.fTop) {
|
||||
+ int32_t topDiff = mask.fBounds.fTop - (-ftGlyph.bitmap_top);
|
||||
+ ftGlyph.bitmap.buffer += ftGlyph.bitmap.pitch * topDiff;
|
||||
+ ftGlyph.bitmap.rows -= topDiff;
|
||||
+ ftGlyph.bitmap_top = -mask.fBounds.fTop;
|
||||
+ }
|
||||
+ if (ftGlyph.bitmap_left < mask.fBounds.fLeft) {
|
||||
+ int32_t leftDiff = mask.fBounds.fLeft - ftGlyph.bitmap_left;
|
||||
+ ftGlyph.bitmap.buffer += leftDiff;
|
||||
+ ftGlyph.bitmap.width -= leftDiff;
|
||||
+ ftGlyph.bitmap_left = mask.fBounds.fLeft;
|
||||
+ }
|
||||
+ if (mask.fBounds.fTop < -ftGlyph.bitmap_top) {
|
||||
+ mask.fImage += mask.fRowBytes * (-ftGlyph.bitmap_top - mask.fBounds.fTop);
|
||||
+ mask.fBounds.fTop = -ftGlyph.bitmap_top;
|
||||
+ }
|
||||
+ if (mask.fBounds.fLeft < ftGlyph.bitmap_left) {
|
||||
+ mask.fImage += sizeof(uint16_t) * (ftGlyph.bitmap_left - mask.fBounds.fLeft);
|
||||
+ mask.fBounds.fLeft = ftGlyph.bitmap_left;
|
||||
+ }
|
||||
+ // Origins aligned, clean up the width and height.
|
||||
+ int ftVertScale = (doVert ? 3 : 1);
|
||||
+ int ftHoriScale = (doVert ? 1 : 3);
|
||||
+ if (mask.fBounds.height() * ftVertScale < SkToInt(ftGlyph.bitmap.rows)) {
|
||||
+ ftGlyph.bitmap.rows = mask.fBounds.height() * ftVertScale;
|
||||
+ }
|
||||
+ if (mask.fBounds.width() * ftHoriScale < SkToInt(ftGlyph.bitmap.width)) {
|
||||
+ ftGlyph.bitmap.width = mask.fBounds.width() * ftHoriScale;
|
||||
+ }
|
||||
+ if (SkToInt(ftGlyph.bitmap.rows) < mask.fBounds.height() * ftVertScale) {
|
||||
+ mask.fBounds.fBottom = mask.fBounds.fTop + ftGlyph.bitmap.rows / ftVertScale;
|
||||
+ }
|
||||
+ if (SkToInt(ftGlyph.bitmap.width) < mask.fBounds.width() * ftHoriScale) {
|
||||
+ mask.fBounds.fRight = mask.fBounds.fLeft + ftGlyph.bitmap.width / ftHoriScale;
|
||||
+ }
|
||||
if (fPreBlend.isApplicable()) {
|
||||
- copyFT2LCD16<true>(face->glyph->bitmap, mask, doBGR,
|
||||
+ copyFT2LCD16<true>(ftGlyph.bitmap, mask, doBGR,
|
||||
fPreBlend.fR, fPreBlend.fG, fPreBlend.fB);
|
||||
} else {
|
||||
- copyFT2LCD16<false>(face->glyph->bitmap, mask, doBGR,
|
||||
+ copyFT2LCD16<false>(ftGlyph.bitmap, mask, doBGR,
|
||||
fPreBlend.fR, fPreBlend.fG, fPreBlend.fB);
|
||||
}
|
||||
+ // Restore the buffer pointer so FreeType can properly free it.
|
||||
+ ftGlyph.bitmap.buffer = origBuffer;
|
||||
} else {
|
||||
+ FT_BBox bbox;
|
||||
+ FT_Bitmap target;
|
||||
+ FT_Outline_Get_CBox(outline, &bbox);
|
||||
+ /*
|
||||
+ what we really want to do for subpixel is
|
||||
+ offset(dx, dy)
|
||||
+ compute_bounds
|
||||
+ offset(bbox & !63)
|
||||
+ but that is two calls to offset, so we do the following, which
|
||||
+ achieves the same thing with only one offset call.
|
||||
+ */
|
||||
+ FT_Outline_Translate(outline, dx - ((bbox.xMin + dx) & ~63),
|
||||
+ dy - ((bbox.yMin + dy) & ~63));
|
||||
+
|
||||
target.width = glyph.fWidth;
|
||||
target.rows = glyph.fHeight;
|
||||
target.pitch = glyph.rowBytes();
|
||||
@@ -442,8 +501,15 @@ void SkScalerContext_FreeType_Base::generateGlyphImage(
|
||||
target.pixel_mode = compute_pixel_mode( (SkMask::Format)fRec.fMaskFormat);
|
||||
target.num_grays = 256;
|
||||
|
||||
- memset(glyph.fImage, 0, glyph.rowBytes() * glyph.fHeight);
|
||||
FT_Outline_Get_Bitmap(face->glyph->library, outline, &target);
|
||||
+#ifdef SK_SHOW_TEXT_BLIT_COVERAGE
|
||||
+ for (int y = 0; y < glyph.fHeight; ++y) {
|
||||
+ for (int x = 0; x < glyph.fWidth; ++x) {
|
||||
+ uint8_t& a = ((uint8_t*)glyph.fImage)[(glyph.rowBytes() * y) + x];
|
||||
+ a = SkTMax<uint8_t>(a, 0x20);
|
||||
+ }
|
||||
+ }
|
||||
+#endif
|
||||
}
|
||||
} break;
|
||||
|
||||
--
|
||||
2.13.2
|
||||
|
||||
@@ -1,225 +0,0 @@
|
||||
From b6a312ed8e144a37da840ae50dbd39df5ffb7e9f Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sun, 2 Jul 2017 16:34:54 -0700
|
||||
Subject: [PATCH 2/2] replace struct ucontext with ucontext_t
|
||||
|
||||
glibc 2.26 does not expose struct ucontext any longer
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
.../linux/dump_writer_common/ucontext_reader.cc | 30 +++++++++++-----------
|
||||
.../linux/dump_writer_common/ucontext_reader.h | 10 ++++----
|
||||
.../src/client/linux/handler/exception_handler.cc | 8 +++---
|
||||
.../src/client/linux/handler/exception_handler.h | 2 +-
|
||||
.../linux/microdump_writer/microdump_writer.cc | 2 +-
|
||||
.../linux/minidump_writer/minidump_writer.cc | 2 +-
|
||||
6 files changed, 27 insertions(+), 27 deletions(-)
|
||||
|
||||
diff --git a/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc b/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
|
||||
index c80724dd8..93b4d9f85 100644
|
||||
--- a/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
|
||||
+++ b/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
|
||||
@@ -40,15 +40,15 @@ namespace google_breakpad {
|
||||
|
||||
#if defined(__i386__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_ESP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_EIP];
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fp) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
|
||||
#elif defined(__x86_64)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_RSP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_RIP];
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fpregs) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
|
||||
#elif defined(__ARM_EABI__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.arm_sp;
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.arm_pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
|
||||
out->context_flags = MD_CONTEXT_ARM_FULL;
|
||||
|
||||
out->iregs[0] = uc->uc_mcontext.arm_r0;
|
||||
@@ -184,15 +184,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
|
||||
#elif defined(__aarch64__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.sp;
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct fpsimd_context* fpregs) {
|
||||
out->context_flags = MD_CONTEXT_ARM64_FULL;
|
||||
|
||||
@@ -210,15 +210,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
|
||||
#elif defined(__mips__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
|
||||
#if _MIPS_SIM == _ABI64
|
||||
out->context_flags = MD_CONTEXT_MIPS64_FULL;
|
||||
#elif _MIPS_SIM == _ABIO32
|
||||
diff --git a/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h b/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
|
||||
index b6e77b4b5..2369a9ad3 100644
|
||||
--- a/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
|
||||
+++ b/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
|
||||
@@ -41,21 +41,21 @@ namespace google_breakpad {
|
||||
|
||||
// Wraps platform-dependent implementations of accessors to ucontext structs.
|
||||
struct UContextReader {
|
||||
- static uintptr_t GetStackPointer(const struct ucontext* uc);
|
||||
+ static uintptr_t GetStackPointer(const ucontext_t* uc);
|
||||
|
||||
- static uintptr_t GetInstructionPointer(const struct ucontext* uc);
|
||||
+ static uintptr_t GetInstructionPointer(const ucontext_t* uc);
|
||||
|
||||
// Juggle a arch-specific ucontext into a minidump format
|
||||
// out: the minidump structure
|
||||
// info: the collection of register structures.
|
||||
#if defined(__i386__) || defined(__x86_64)
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fp);
|
||||
#elif defined(__aarch64__)
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct fpsimd_context* fpregs);
|
||||
#else
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc);
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc);
|
||||
#endif
|
||||
};
|
||||
|
||||
diff --git a/breakpad/src/client/linux/handler/exception_handler.cc b/breakpad/src/client/linux/handler/exception_handler.cc
|
||||
index b63f973b8..f2688acaf 100644
|
||||
--- a/breakpad/src/client/linux/handler/exception_handler.cc
|
||||
+++ b/breakpad/src/client/linux/handler/exception_handler.cc
|
||||
@@ -439,9 +439,9 @@ bool ExceptionHandler::HandleSignal(int sig, siginfo_t* info, void* uc) {
|
||||
// Fill in all the holes in the struct to make Valgrind happy.
|
||||
memset(&g_crash_context_, 0, sizeof(g_crash_context_));
|
||||
memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t));
|
||||
- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext));
|
||||
+ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t));
|
||||
#if defined(__aarch64__)
|
||||
- struct ucontext* uc_ptr = (struct ucontext*)uc;
|
||||
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
|
||||
struct fpsimd_context* fp_ptr =
|
||||
(struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved;
|
||||
if (fp_ptr->head.magic == FPSIMD_MAGIC) {
|
||||
@@ -452,7 +452,7 @@ bool ExceptionHandler::HandleSignal(int sig, siginfo_t* info, void* uc) {
|
||||
// FP state is not part of user ABI on ARM Linux.
|
||||
// In case of MIPS Linux FP state is already part of struct ucontext
|
||||
// and 'float_state' is not a member of CrashContext.
|
||||
- struct ucontext* uc_ptr = (struct ucontext*)uc;
|
||||
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
|
||||
if (uc_ptr->uc_mcontext.fpregs) {
|
||||
memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs,
|
||||
sizeof(g_crash_context_.float_state));
|
||||
@@ -476,7 +476,7 @@ bool ExceptionHandler::SimulateSignalDelivery(int sig) {
|
||||
// ExceptionHandler::HandleSignal().
|
||||
siginfo.si_code = SI_USER;
|
||||
siginfo.si_pid = getpid();
|
||||
- struct ucontext context;
|
||||
+ ucontext_t context;
|
||||
getcontext(&context);
|
||||
return HandleSignal(sig, &siginfo, &context);
|
||||
}
|
||||
diff --git a/breakpad/src/client/linux/handler/exception_handler.h b/breakpad/src/client/linux/handler/exception_handler.h
|
||||
index 591c31085..846df772f 100644
|
||||
--- a/breakpad/src/client/linux/handler/exception_handler.h
|
||||
+++ b/breakpad/src/client/linux/handler/exception_handler.h
|
||||
@@ -191,7 +191,7 @@ class ExceptionHandler {
|
||||
struct CrashContext {
|
||||
siginfo_t siginfo;
|
||||
pid_t tid; // the crashing thread.
|
||||
- struct ucontext context;
|
||||
+ ucontext_t context;
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
// #ifdef this out because FP state is not part of user ABI for Linux ARM.
|
||||
// In case of MIPS Linux FP state is already part of struct
|
||||
diff --git a/breakpad/src/client/linux/microdump_writer/microdump_writer.cc b/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
|
||||
index 6f5b43559..a508667a0 100644
|
||||
--- a/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
|
||||
+++ b/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
|
||||
@@ -571,7 +571,7 @@ class MicrodumpWriter {
|
||||
|
||||
void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); }
|
||||
|
||||
- const struct ucontext* const ucontext_;
|
||||
+ const ucontext_t* const ucontext_;
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
const google_breakpad::fpstate_t* const float_state_;
|
||||
#endif
|
||||
diff --git a/breakpad/src/client/linux/minidump_writer/minidump_writer.cc b/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
|
||||
index 86009b9f6..f2aec73d7 100644
|
||||
--- a/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
|
||||
+++ b/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
|
||||
@@ -1248,7 +1248,7 @@ class MinidumpWriter {
|
||||
const int fd_; // File descriptor where the minidum should be written.
|
||||
const char* path_; // Path to the file where the minidum should be written.
|
||||
|
||||
- const struct ucontext* const ucontext_; // also from the signal handler
|
||||
+ const ucontext_t* const ucontext_; // also from the signal handler
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
const google_breakpad::fpstate_t* const float_state_; // ditto
|
||||
#endif
|
||||
--
|
||||
2.13.2
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
diff -up chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp
|
||||
--- chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free 2016-08-15 13:07:29.279655676 -0400
|
||||
+++ chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp 2016-08-15 13:08:38.447317416 -0400
|
||||
@@ -41,6 +41,11 @@
|
||||
#include <errno.h>
|
||||
#include <sys/mman.h>
|
||||
|
||||
+#if OS(LINUX) && defined(MADV_FREE)
|
||||
+// Added in Linux 4.5, but it breaks the sandbox.
|
||||
+#undef MADV_FREE
|
||||
+#endif
|
||||
+
|
||||
#ifndef MADV_FREE
|
||||
#define MADV_FREE MADV_DONTNEED
|
||||
#endif
|
||||
@@ -1,56 +0,0 @@
|
||||
Submitted By: DJ Lucas <dj_AT_linuxfromscratch_DOT_org>
|
||||
Date: 2017-03-18
|
||||
Initial Package Version: 57.0.2987.110
|
||||
Upstream Status: Not submitted
|
||||
Origin: Gentoo: https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/chromium-system-ffmpeg-r4.patch
|
||||
Description: Allows building with system provided ffmpeg.
|
||||
|
||||
|
||||
--- a/media/ffmpeg/ffmpeg_common.h.orig 2016-09-09 13:16:07.757294768 +0000
|
||||
+++ b/media/ffmpeg/ffmpeg_common.h 2016-09-09 13:16:41.705989273 +0000
|
||||
@@ -22,10 +22,6 @@
|
||||
|
||||
// Include FFmpeg header files.
|
||||
extern "C" {
|
||||
-// Disable deprecated features which result in spammy compile warnings. This
|
||||
-// list of defines must mirror those in the 'defines' section of FFmpeg's
|
||||
-// BUILD.gn file or the headers below will generate different structures!
|
||||
-#define FF_API_CONVERGENCE_DURATION 0
|
||||
// Upstream libavcodec/utils.c still uses the deprecated
|
||||
// av_dup_packet(), causing deprecation warnings.
|
||||
// The normal fix for such things is to disable the feature as below,
|
||||
@@ -35,7 +35,6 @@
|
||||
MSVC_PUSH_DISABLE_WARNING(4244);
|
||||
#include <libavcodec/avcodec.h>
|
||||
#include <libavformat/avformat.h>
|
||||
-#include <libavformat/internal.h>
|
||||
#include <libavformat/avio.h>
|
||||
#include <libavutil/avutil.h>
|
||||
#include <libavutil/imgutils.h>
|
||||
--- a/media/filters/ffmpeg_demuxer.cc.orig 2016-09-09 14:21:40.185828912 +0000
|
||||
+++ b/media/filters/ffmpeg_demuxer.cc 2016-09-09 14:21:52.894089352 +0000
|
||||
@@ -1185,24 +1185,6 @@
|
||||
// If no estimate is found, the stream entry will be kInfiniteDuration.
|
||||
std::vector<base::TimeDelta> start_time_estimates(format_context->nb_streams,
|
||||
kInfiniteDuration);
|
||||
- const AVFormatInternal* internal = format_context->internal;
|
||||
- if (internal && internal->packet_buffer &&
|
||||
- format_context->start_time != static_cast<int64_t>(AV_NOPTS_VALUE)) {
|
||||
- struct AVPacketList* packet_buffer = internal->packet_buffer;
|
||||
- while (packet_buffer != internal->packet_buffer_end) {
|
||||
- DCHECK_LT(static_cast<size_t>(packet_buffer->pkt.stream_index),
|
||||
- start_time_estimates.size());
|
||||
- const AVStream* stream =
|
||||
- format_context->streams[packet_buffer->pkt.stream_index];
|
||||
- if (packet_buffer->pkt.pts != static_cast<int64_t>(AV_NOPTS_VALUE)) {
|
||||
- const base::TimeDelta packet_pts =
|
||||
- ConvertFromTimeBase(stream->time_base, packet_buffer->pkt.pts);
|
||||
- if (packet_pts < start_time_estimates[stream->index])
|
||||
- start_time_estimates[stream->index] = packet_pts;
|
||||
- }
|
||||
- packet_buffer = packet_buffer->next;
|
||||
- }
|
||||
- }
|
||||
|
||||
std::unique_ptr<MediaTracks> media_tracks(new MediaTracks());
|
||||
|
||||
+554
@@ -0,0 +1,554 @@
|
||||
--- chromium-69.0.3472.3/third_party/webrtc/video/video_receive_stream.cc.gcc7 2018-06-26 06:35:08.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/third_party/webrtc/video/video_receive_stream.cc 2018-07-07 12:13:45.579733235 +0200
|
||||
@@ -320,10 +320,6 @@
|
||||
const CodecSpecificInfo* codec_specific_info,
|
||||
const RTPFragmentationHeader* fragmentation) {
|
||||
stats_proxy_.OnPreDecode(encoded_image, codec_specific_info);
|
||||
- size_t simulcast_idx = 0;
|
||||
- if (codec_specific_info->codecType == kVideoCodecVP8) {
|
||||
- simulcast_idx = codec_specific_info->codecSpecific.VP8.simulcastIdx;
|
||||
- }
|
||||
{
|
||||
rtc::CritScope lock(&ivf_writer_lock_);
|
||||
if (ivf_writer_.get()) {
|
||||
--- chromium-69.0.3472.3/third_party/crashpad/crashpad/compat/non_win/dbghelp.h.gcc7 2018-06-26 06:33:19.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/third_party/crashpad/crashpad/compat/non_win/dbghelp.h 2018-07-07 12:30:05.410672630 +0200
|
||||
@@ -29,7 +29,7 @@
|
||||
//!
|
||||
//! A hex dump of a little-endian minidump file will begin with the string
|
||||
//! “MDMP”.
|
||||
-#define MINIDUMP_SIGNATURE ('PMDM') // 0x4d444d50
|
||||
+#define MINIDUMP_SIGNATURE (0x4d444d50) // 'PMDM'
|
||||
|
||||
//! \brief The version of a minidump file, stored in MINIDUMP_HEADER::Version.
|
||||
#define MINIDUMP_VERSION (42899)
|
||||
--- chromium-69.0.3472.3/chrome/browser/chrome_browser_main.cc.gcc7 2018-06-26 06:32:57.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/chrome/browser/chrome_browser_main.cc 2018-07-07 13:30:10.409446615 +0200
|
||||
@@ -740,9 +740,8 @@
|
||||
chrome::AttemptExit();
|
||||
return false;
|
||||
}
|
||||
-#else
|
||||
- return true;
|
||||
#endif
|
||||
+ return true;
|
||||
}
|
||||
|
||||
} // namespace
|
||||
--- chromium-69.0.3472.3/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc.gcc7 2018-06-26 06:32:58.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc 2018-07-07 13:47:27.816647653 +0200
|
||||
@@ -154,6 +154,7 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
+ return false;
|
||||
}
|
||||
|
||||
StateChangeReason DiscardReasonToStateChangeReason(DiscardReason reason) {
|
||||
@@ -165,6 +166,7 @@
|
||||
case DiscardReason::kUrgent:
|
||||
return StateChangeReason::SYSTEM_MEMORY_PRESSURE;
|
||||
}
|
||||
+ return StateChangeReason::BROWSER_INITIATED;
|
||||
}
|
||||
|
||||
struct FeatureUsageEntry {
|
||||
--- chromium-69.0.3472.3/chrome/browser/ui/views/harmony/material_refresh_layout_provider.cc.gcc7 2018-06-26 06:32:58.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/chrome/browser/ui/views/harmony/material_refresh_layout_provider.cc 2018-07-07 14:36:14.447584185 +0200
|
||||
@@ -33,9 +33,6 @@
|
||||
views::EmphasisMetric emphasis_metric,
|
||||
const gfx::Size& size) const {
|
||||
switch (emphasis_metric) {
|
||||
- case views::EMPHASIS_NONE:
|
||||
- NOTREACHED();
|
||||
- return 0;
|
||||
case views::EMPHASIS_LOW:
|
||||
case views::EMPHASIS_MEDIUM:
|
||||
return 4;
|
||||
@@ -43,15 +40,15 @@
|
||||
return 8;
|
||||
case views::EMPHASIS_MAXIMUM:
|
||||
return std::min(size.width(), size.height()) / 2;
|
||||
+ case views::EMPHASIS_NONE:
|
||||
+ NOTREACHED();
|
||||
}
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int MaterialRefreshLayoutProvider::GetShadowElevationMetric(
|
||||
views::EmphasisMetric emphasis_metric) const {
|
||||
switch (emphasis_metric) {
|
||||
- case views::EMPHASIS_NONE:
|
||||
- NOTREACHED();
|
||||
- return 0;
|
||||
case views::EMPHASIS_LOW:
|
||||
return 1;
|
||||
case views::EMPHASIS_MEDIUM:
|
||||
@@ -60,7 +57,10 @@
|
||||
return 3;
|
||||
case views::EMPHASIS_MAXIMUM:
|
||||
return 16;
|
||||
+ case views::EMPHASIS_NONE:
|
||||
+ NOTREACHED();
|
||||
}
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
gfx::ShadowValues MaterialRefreshLayoutProvider::MakeShadowValues(
|
||||
--- chromium-69.0.3472.3/chrome/browser/ui/views/passwords/password_generation_popup_view_views.cc.gcc7 2018-06-26 06:32:58.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/chrome/browser/ui/views/passwords/password_generation_popup_view_views.cc 2018-07-07 15:04:10.502088288 +0200
|
||||
@@ -55,8 +55,8 @@
|
||||
views::Label* suggestion_label = new views::Label(
|
||||
suggestion, ChromeTextContext::CONTEXT_BODY_TEXT_LARGE,
|
||||
state == PasswordGenerationPopupController::kOfferGeneration
|
||||
- ? views::style::STYLE_PRIMARY
|
||||
- : STYLE_SECONDARY);
|
||||
+ ? int(views::style::STYLE_PRIMARY)
|
||||
+ : int(STYLE_SECONDARY));
|
||||
layout->AddView(suggestion_label);
|
||||
|
||||
DCHECK(!password_label_);
|
||||
--- chromium-69.0.3472.3/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc.gcc7-7 2018-06-26 06:33:00.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc 2018-07-07 15:22:43.289751740 +0200
|
||||
@@ -313,8 +313,6 @@
|
||||
PageloadMetrics_ConnectionType ProtoConnectionTypeFromConnectionType(
|
||||
net::NetworkChangeNotifier::ConnectionType connection_type) {
|
||||
switch (connection_type) {
|
||||
- case net::NetworkChangeNotifier::CONNECTION_UNKNOWN:
|
||||
- return PageloadMetrics_ConnectionType_CONNECTION_UNKNOWN;
|
||||
case net::NetworkChangeNotifier::CONNECTION_ETHERNET:
|
||||
return PageloadMetrics_ConnectionType_CONNECTION_ETHERNET;
|
||||
case net::NetworkChangeNotifier::CONNECTION_WIFI:
|
||||
@@ -329,7 +327,10 @@
|
||||
return PageloadMetrics_ConnectionType_CONNECTION_NONE;
|
||||
case net::NetworkChangeNotifier::CONNECTION_BLUETOOTH:
|
||||
return PageloadMetrics_ConnectionType_CONNECTION_BLUETOOTH;
|
||||
+ case net::NetworkChangeNotifier::CONNECTION_UNKNOWN:
|
||||
+ break;
|
||||
}
|
||||
+ return PageloadMetrics_ConnectionType_CONNECTION_UNKNOWN;
|
||||
}
|
||||
|
||||
RequestInfo_Protocol ProtoRequestInfoProtocolFromRequestInfoProtocol(
|
||||
@@ -342,8 +343,9 @@
|
||||
case DataReductionProxyData::RequestInfo::Protocol::QUIC:
|
||||
return RequestInfo_Protocol_QUIC;
|
||||
case DataReductionProxyData::RequestInfo::Protocol::UNKNOWN:
|
||||
- return RequestInfo_Protocol_UNKNOWN;
|
||||
+ break;
|
||||
}
|
||||
+ return RequestInfo_Protocol_UNKNOWN;
|
||||
}
|
||||
|
||||
net::ProxyServer::Scheme SchemeFromProxyScheme(
|
||||
--- chromium-69.0.3472.3/components/previews/core/previews_black_list.cc.gcc7 2018-06-26 06:33:01.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/components/previews/core/previews_black_list.cc 2018-07-07 15:41:14.295381780 +0200
|
||||
@@ -34,6 +34,7 @@
|
||||
case blacklist::BlacklistReason::kAllowed:
|
||||
return PreviewsEligibilityReason::ALLOWED;
|
||||
}
|
||||
+ return PreviewsEligibilityReason::LAST;
|
||||
}
|
||||
|
||||
}
|
||||
--- chromium-69.0.3472.3/base/callback_helpers.h.gcc7 2018-06-26 06:32:56.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/base/callback_helpers.h 2018-07-07 16:00:33.724127746 +0200
|
||||
@@ -91,7 +91,7 @@
|
||||
void ReplaceClosure(OnceClosure closure);
|
||||
|
||||
// Releases the Closure without calling.
|
||||
- OnceClosure Release() WARN_UNUSED_RESULT;
|
||||
+ OnceClosure Release();
|
||||
|
||||
private:
|
||||
OnceClosure closure_;
|
||||
--- chromium-69.0.3472.3/content/browser/frame_host/frame_tree_node.cc.gcc7 2018-06-26 06:33:02.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/content/browser/frame_host/frame_tree_node.cc 2018-07-07 18:37:53.236178023 +0200
|
||||
@@ -624,6 +624,7 @@
|
||||
return NotifyUserActivation();
|
||||
}
|
||||
NOTREACHED() << "Invalid update_type.";
|
||||
+ return false;
|
||||
}
|
||||
|
||||
void FrameTreeNode::OnSetHasReceivedUserGestureBeforeNavigation(bool value) {
|
||||
--- chromium-69.0.3472.3/device/bluetooth/bluetooth_remote_gatt_characteristic.cc.gcc7 2018-06-26 06:33:02.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/device/bluetooth/bluetooth_remote_gatt_characteristic.cc 2018-07-07 21:00:37.557253268 +0200
|
||||
@@ -362,14 +362,15 @@
|
||||
Properties properties = GetProperties();
|
||||
bool hasNotify = (properties & PROPERTY_NOTIFY) != 0;
|
||||
bool hasIndicate = (properties & PROPERTY_INDICATE) != 0;
|
||||
- if (!notification_type)
|
||||
- return hasNotify || hasIndicate;
|
||||
- switch (notification_type.value()) {
|
||||
- case NotificationType::kNotification:
|
||||
- return hasNotify;
|
||||
- case NotificationType::kIndication:
|
||||
- return hasIndicate;
|
||||
+ if (notification_type) {
|
||||
+ switch (notification_type.value()) {
|
||||
+ case NotificationType::kNotification:
|
||||
+ return hasNotify;
|
||||
+ case NotificationType::kIndication:
|
||||
+ return hasIndicate;
|
||||
+ }
|
||||
}
|
||||
+ return hasNotify || hasIndicate;
|
||||
}
|
||||
|
||||
} // namespace device
|
||||
--- chromium-69.0.3472.3/ui/base/mojo/clipboard_struct_traits.h.gcc7 2018-06-26 06:33:23.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/ui/base/mojo/clipboard_struct_traits.h 2018-07-07 22:02:21.462873681 +0200
|
||||
@@ -21,6 +21,7 @@
|
||||
case ui::CLIPBOARD_TYPE_DRAG:
|
||||
return ui::mojom::ClipboardType::DRAG;
|
||||
}
|
||||
+ return ui::mojom::ClipboardType(int(ui::mojom::ClipboardType::kMaxValue) + 1);
|
||||
}
|
||||
|
||||
static bool FromMojom(ui::mojom::ClipboardType type, ui::ClipboardType* out) {
|
||||
--- chromium-69.0.3472.3/pdf/out_of_process_instance.cc.gcc7 2018-06-26 06:33:05.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/pdf/out_of_process_instance.cc 2018-07-07 22:24:15.654709688 +0200
|
||||
@@ -471,7 +471,6 @@
|
||||
|
||||
text_input_ = std::make_unique<pp::TextInput_Dev>(this);
|
||||
|
||||
- bool enable_javascript = false;
|
||||
const char* stream_url = nullptr;
|
||||
const char* original_url = nullptr;
|
||||
const char* top_level_url = nullptr;
|
||||
@@ -491,8 +490,6 @@
|
||||
} else if (strcmp(argn[i], "top-toolbar-height") == 0) {
|
||||
success =
|
||||
base::StringToInt(argv[i], &top_toolbar_height_in_viewport_coords_);
|
||||
- } else if (strcmp(argn[i], "javascript") == 0) {
|
||||
- enable_javascript = (strcmp(argv[i], "allow") == 0);
|
||||
}
|
||||
if (!success)
|
||||
return false;
|
||||
--- chromium-69.0.3472.3/ui/views/layout/layout_provider.cc.gcc7 2018-06-26 06:33:24.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/ui/views/layout/layout_provider.cc 2018-07-07 22:46:19.302390595 +0200
|
||||
@@ -148,7 +148,7 @@
|
||||
switch (emphasis_metric) {
|
||||
case views::EMPHASIS_NONE:
|
||||
NOTREACHED();
|
||||
- return 0;
|
||||
+ break;
|
||||
case EMPHASIS_LOW:
|
||||
case EMPHASIS_MEDIUM:
|
||||
return is_touch ? 4 : 2;
|
||||
@@ -157,6 +157,7 @@
|
||||
case EMPHASIS_MAXIMUM:
|
||||
return is_touch ? std::min(size.width(), size.height()) / 2 : 4;
|
||||
}
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int LayoutProvider::GetShadowElevationMetric(
|
||||
--- chromium-69.0.3472.3/content/renderer/input/input_event_prediction.cc.gcc7 2018-06-26 06:33:02.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/content/renderer/input/input_event_prediction.cc 2018-07-07 23:26:14.070643691 +0200
|
||||
@@ -77,6 +77,7 @@
|
||||
case PredictorType::kKalman:
|
||||
return std::make_unique<ui::KalmanPredictor>();
|
||||
}
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
void InputEventPrediction::UpdatePrediction(const WebInputEvent& event) {
|
||||
--- chromium-69.0.3472.3/third_party/blink/renderer/platform/heap/heap_stats_collector.h.gcc7 2018-06-26 06:33:19.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/third_party/blink/renderer/platform/heap/heap_stats_collector.h 2018-07-08 02:47:57.843418842 +0200
|
||||
@@ -95,6 +95,7 @@
|
||||
case Id::kVisitStackRoots:
|
||||
return "BlinkGC.VisitStackRoots";
|
||||
}
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
static constexpr int kNumScopeIds = kLastScopeId + 1;
|
||||
--- chromium-69.0.3472.3/third_party/blink/renderer/platform/scheduler/main_thread/page_scheduler_impl.cc.gcc7 2018-06-26 06:33:19.000000000 +0200
|
||||
+++ chromium-69.0.3472.3/third_party/blink/renderer/platform/scheduler/main_thread/page_scheduler_impl.cc 2018-07-08 10:57:14.446270568 +0200
|
||||
@@ -622,7 +622,7 @@
|
||||
switch (old_state) {
|
||||
case PageLifecycleState::kUnknown:
|
||||
// We don't track the initial transition.
|
||||
- return base::nullopt;
|
||||
+ break;
|
||||
case PageLifecycleState::kActive:
|
||||
switch (new_state) {
|
||||
case PageLifecycleState::kHiddenForegrounded:
|
||||
@@ -631,7 +631,7 @@
|
||||
return PageLifecycleStateTransition::kActiveToHiddenBackgrounded;
|
||||
default:
|
||||
NOTREACHED();
|
||||
- return base::nullopt;
|
||||
+ break;
|
||||
}
|
||||
case PageLifecycleState::kHiddenForegrounded:
|
||||
switch (new_state) {
|
||||
@@ -644,7 +644,7 @@
|
||||
return PageLifecycleStateTransition::kHiddenForegroundedToFrozen;
|
||||
default:
|
||||
NOTREACHED();
|
||||
- return base::nullopt;
|
||||
+ break;
|
||||
}
|
||||
case PageLifecycleState::kHiddenBackgrounded:
|
||||
switch (new_state) {
|
||||
@@ -657,8 +657,8 @@
|
||||
return PageLifecycleStateTransition::kHiddenBackgroundedToFrozen;
|
||||
default:
|
||||
NOTREACHED();
|
||||
- return base::nullopt;
|
||||
- }
|
||||
+ break;
|
||||
+ }
|
||||
case PageLifecycleState::kFrozen:
|
||||
switch (new_state) {
|
||||
case PageLifecycleState::kActive:
|
||||
@@ -669,9 +669,10 @@
|
||||
return PageLifecycleStateTransition::kFrozenToHiddenBackgrounded;
|
||||
default:
|
||||
NOTREACHED();
|
||||
- return base::nullopt;
|
||||
+ break;
|
||||
}
|
||||
}
|
||||
+ return base::nullopt;
|
||||
}
|
||||
|
||||
// static
|
||||
--- chromium-69.0.3497.4/third_party/pdfium/core/fpdfapi/render/cpdf_scaledrenderbuffer.cpp.gcc7 2018-07-21 09:14:59.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/third_party/pdfium/core/fpdfapi/render/cpdf_scaledrenderbuffer.cpp 2018-07-21 18:57:05.372328475 +0200
|
||||
@@ -50,10 +50,8 @@
|
||||
}
|
||||
m_pBitmapDevice = pdfium::MakeUnique<CFX_DefaultRenderDevice>();
|
||||
FXDIB_Format dibFormat = FXDIB_Rgb;
|
||||
- int32_t bpp = 24;
|
||||
if (m_pDevice->GetDeviceCaps(FXDC_RENDER_CAPS) & FXRC_ALPHA_OUTPUT) {
|
||||
dibFormat = FXDIB_Argb;
|
||||
- bpp = 32;
|
||||
}
|
||||
while (1) {
|
||||
FX_RECT bitmap_rect =
|
||||
--- chromium-69.0.3497.4/third_party/pdfium/fxjs/cjs_field.cpp.gcc7 2018-07-21 09:14:59.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/third_party/pdfium/fxjs/cjs_field.cpp 2018-07-21 20:25:41.470285320 +0200
|
||||
@@ -703,14 +703,16 @@
|
||||
|
||||
CPDF_FormField* pFormField = GetFirstFormField();
|
||||
if (!pFormField)
|
||||
+ {
|
||||
return CJS_Return(JSMessage::kBadObjectError);
|
||||
-
|
||||
- return CJS_Return(JSMessage::kBadObjectError);
|
||||
+ }
|
||||
|
||||
CPDFSDK_Widget* pWidget =
|
||||
GetWidget(m_pFormFillEnv.Get(), GetSmartFieldControl(pFormField));
|
||||
if (!pWidget)
|
||||
+ {
|
||||
return CJS_Return(JSMessage::kBadObjectError);
|
||||
+ }
|
||||
|
||||
switch (pWidget->GetBorderStyle()) {
|
||||
case BorderStyle::SOLID:
|
||||
--- chromium-69.0.3497.4/components/policy/core/common/policy_proto_decoders.cc.gcc7 2018-07-21 09:12:56.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/components/policy/core/common/policy_proto_decoders.cc 2018-07-21 21:38:32.566870921 +0200
|
||||
@@ -43,6 +43,7 @@
|
||||
case em::PolicyOptions::UNSET:
|
||||
return false;
|
||||
}
|
||||
+ return false;
|
||||
}
|
||||
|
||||
// Convert a BooleanPolicyProto to a bool base::Value.
|
||||
@@ -186,4 +187,4 @@
|
||||
}
|
||||
}
|
||||
|
||||
-} // namespace policy
|
||||
\ No newline at end of file
|
||||
+} // namespace policy
|
||||
--- chromium-69.0.3497.4/components/password_manager/core/browser/browser_save_password_progress_logger.cc.gcc7 2018-07-21 09:12:55.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/components/password_manager/core/browser/browser_save_password_progress_logger.cc 2018-07-21 23:21:48.274812853 +0200
|
||||
@@ -87,6 +87,7 @@
|
||||
case AutofillUploadContents::Field::FIRST_USE:
|
||||
return "First use";
|
||||
}
|
||||
+ return "";
|
||||
}
|
||||
|
||||
} // namespace
|
||||
--- chromium-69.0.3497.4/components/previews/content/previews_hints.cc.gcc7 2018-07-21 09:12:56.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/components/previews/content/previews_hints.cc 2018-07-21 23:28:56.375131778 +0200
|
||||
@@ -95,6 +95,7 @@
|
||||
case optimization_guide::proto::RESOURCE_LOADING:
|
||||
return PreviewsType::RESOURCE_LOADING_HINTS;
|
||||
}
|
||||
+ return base::Optional<PreviewsType>();
|
||||
}
|
||||
|
||||
void RecordProcessHintsResult(PreviewsProcessHintsResult result) {
|
||||
--- chromium-69.0.3497.4/content/browser/renderer_host/input/mouse_wheel_event_queue.cc.gcc7 2018-07-21 09:13:03.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/content/browser/renderer_host/input/mouse_wheel_event_queue.cc 2018-07-21 23:53:41.085484269 +0200
|
||||
@@ -178,13 +178,11 @@
|
||||
bool current_phase_ended = false;
|
||||
bool scroll_phase_ended = false;
|
||||
bool momentum_phase_ended = false;
|
||||
- bool has_phase_info = false;
|
||||
|
||||
if (event_sent_for_gesture_ack_->event.phase !=
|
||||
blink::WebMouseWheelEvent::kPhaseNone ||
|
||||
event_sent_for_gesture_ack_->event.momentum_phase !=
|
||||
blink::WebMouseWheelEvent::kPhaseNone) {
|
||||
- has_phase_info = true;
|
||||
scroll_phase_ended = event_sent_for_gesture_ack_->event.phase ==
|
||||
blink::WebMouseWheelEvent::kPhaseEnded ||
|
||||
event_sent_for_gesture_ack_->event.phase ==
|
||||
--- chromium-69.0.3497.4/content/browser/web_package/signed_exchange_handler.cc.gcc7 2018-07-21 20:30:02.788552807 +0200
|
||||
+++ chromium-69.0.3497.4/content/browser/web_package/signed_exchange_handler.cc 2018-07-22 00:32:42.325559060 +0200
|
||||
@@ -499,7 +499,7 @@
|
||||
base::StringPrintf(
|
||||
"CT verification failed. result: %s, policy compliance: %d",
|
||||
net::ErrorToShortString(ct_result).c_str(),
|
||||
- ct_verify_result.policy_compliance),
|
||||
+ int(ct_verify_result.policy_compliance)),
|
||||
std::make_pair(0 /* signature_index */,
|
||||
SignedExchangeError::Field::kSignatureCertUrl));
|
||||
RunErrorCallback(net::ERR_INVALID_SIGNED_EXCHANGE);
|
||||
--- chromium-69.0.3497.4/net/third_party/quic/core/quic_framer.cc.gcc7 2018-07-21 09:13:13.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/net/third_party/quic/core/quic_framer.cc 2018-07-22 01:30:27.093813461 +0200
|
||||
@@ -3634,7 +3634,6 @@
|
||||
return false;
|
||||
}
|
||||
|
||||
- size_t num_timestamps_offset = 0;
|
||||
size_t max_num_ack_blocks = available_timestamp_and_ack_block_bytes /
|
||||
(ack_block_length + PACKET_1BYTE_PACKET_NUMBER);
|
||||
|
||||
@@ -3652,7 +3651,6 @@
|
||||
|
||||
// Write a placeholder for the number of timestamps which will be
|
||||
// overwritten after the ack blocks have been written.
|
||||
- num_timestamps_offset = writer->length();
|
||||
uint8_t num_timestamps = 0;
|
||||
if (!writer->WriteUInt8(num_timestamps)) {
|
||||
return false;
|
||||
--- chromium-69.0.3497.4/services/ui/public/cpp/gpu/command_buffer_metrics.cc.gcc7 2018-07-21 09:13:14.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/services/ui/public/cpp/gpu/command_buffer_metrics.cc 2018-07-22 02:02:14.833006828 +0200
|
||||
@@ -87,6 +87,7 @@
|
||||
case ContextType::FOR_TESTING:
|
||||
return "ForTesting";
|
||||
}
|
||||
+ return "Unexpected";
|
||||
}
|
||||
|
||||
void UmaRecordContextInitFailed(ContextType type) {
|
||||
--- chromium-69.0.3497.4/third_party/blink/renderer/modules/peerconnection/rtc_rtp_transceiver.cc.gcc7 2018-07-21 09:13:41.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/third_party/blink/renderer/modules/peerconnection/rtc_rtp_transceiver.cc 2018-07-22 02:11:31.506330451 +0200
|
||||
@@ -29,6 +29,7 @@
|
||||
case webrtc::RtpTransceiverDirection::kInactive:
|
||||
return "inactive";
|
||||
}
|
||||
+ return "";
|
||||
}
|
||||
|
||||
String OptionalTransceiverDirectionToString(
|
||||
--- chromium-69.0.3497.4/media/blink/watch_time_reporter.cc.gcc7 2018-07-21 09:13:09.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/media/blink/watch_time_reporter.cc 2018-07-22 03:13:23.483720815 +0200
|
||||
@@ -572,6 +572,7 @@
|
||||
case DisplayType::kPictureInPicture:
|
||||
return DISPLAY_TYPE_KEY(DisplayPictureInPicture);
|
||||
}
|
||||
+ return DISPLAY_TYPE_KEY(All);
|
||||
}
|
||||
|
||||
#undef DISPLAY_TYPE_KEY
|
||||
--- chromium-69.0.3497.4/third_party/blink/renderer/core/css/style_environment_variables.cc.gcc7 2018-07-21 09:13:40.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/third_party/blink/renderer/core/css/style_environment_variables.cc 2018-07-22 10:53:45.772448293 +0200
|
||||
@@ -63,6 +63,7 @@
|
||||
case UADefinedVariable::kSafeAreaInsetRight:
|
||||
return "safe-area-inset-right";
|
||||
default:
|
||||
+ return "";
|
||||
break;
|
||||
}
|
||||
|
||||
--- chromium-69.0.3497.4/third_party/blink/renderer/core/frame/local_frame_view.cc.gcc7 2018-07-21 20:30:02.719554057 +0200
|
||||
+++ chromium-69.0.3497.4/third_party/blink/renderer/core/frame/local_frame_view.cc 2018-07-22 12:07:12.229220576 +0200
|
||||
@@ -3211,7 +3211,7 @@
|
||||
|
||||
FloatPoint LocalFrameView::ConvertToContainingEmbeddedContentView(
|
||||
const FloatPoint& local_point) const {
|
||||
- if (LocalFrameView* parent = ParentFrameView()) {
|
||||
+ if (ParentFrameView() != 0) {
|
||||
auto* layout_object = frame_->OwnerLayoutObject();
|
||||
if (!layout_object)
|
||||
return local_point;
|
||||
--- chromium-69.0.3497.4/third_party/blink/renderer/core/xmlhttprequest/xml_http_request.cc.gcc7 2018-07-21 09:13:41.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/third_party/blink/renderer/core/xmlhttprequest/xml_http_request.cc 2018-07-22 12:12:33.199377829 +0200
|
||||
@@ -1753,9 +1753,6 @@
|
||||
unsigned long identifier,
|
||||
const ResourceResponse& response,
|
||||
std::unique_ptr<WebDataConsumerHandle> handle) {
|
||||
- // TODO(yhirano): Remove this CHECK: see https://crbug.com/570946.
|
||||
- CHECK(&response);
|
||||
-
|
||||
ALLOW_UNUSED_LOCAL(handle);
|
||||
DCHECK(!handle);
|
||||
NETWORK_DVLOG(1) << this << " didReceiveResponse(" << identifier << ")";
|
||||
--- chromium-69.0.3497.4/third_party/blink/renderer/modules/cookie_store/cookie_change_event.cc.gcc7 2018-07-21 09:13:41.000000000 +0200
|
||||
+++ chromium-69.0.3497.4/third_party/blink/renderer/modules/cookie_store/cookie_change_event.cc 2018-07-22 12:42:37.155347296 +0200
|
||||
@@ -56,6 +56,7 @@
|
||||
}
|
||||
|
||||
NOTREACHED();
|
||||
+ return "";
|
||||
}
|
||||
|
||||
} // namespace
|
||||
--- chromium-69.0.3497.4/third_party/blink/renderer/platform/text/character_property_data_generator.h.gcc7 2018-07-22 13:38:55.938619906 +0200
|
||||
+++ chromium-69.0.3497.4/third_party/blink/renderer/platform/text/character_property_data_generator.h 2018-07-22 13:39:12.271315025 +0200
|
||||
@@ -247,7 +247,7 @@
|
||||
0xFFA0, 0xFFDC,
|
||||
};
|
||||
|
||||
-static const UChar32 kIsHangulArray[] = {};
|
||||
+static const UChar32 kIsHangulArray[] = {0};
|
||||
|
||||
} // namespace blink
|
||||
|
||||
--- chromium-69.0.3497.42/chrome/browser/resource_coordinator/local_site_characteristics_webcontents_observer.cc.gcc7 2018-08-17 03:05:19.000000000 +0200
|
||||
+++ chromium-69.0.3497.42/chrome/browser/resource_coordinator/local_site_characteristics_webcontents_observer.cc 2018-08-18 23:31:30.084822331 +0200
|
||||
@@ -254,9 +254,11 @@
|
||||
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
|
||||
|
||||
if (ShouldIgnoreFeatureUsageEvent(feature_type))
|
||||
+ {
|
||||
return;
|
||||
+ }
|
||||
|
||||
- (writer_.get()->*method)();
|
||||
+ (writer_.get()->*method)();
|
||||
}
|
||||
|
||||
void LocalSiteCharacteristicsWebContentsObserver::OnSiteLoaded() {
|
||||
--- chromium-69.0.3497.42/content/renderer/media/webrtc/peer_connection_tracker.cc.gcc7 2018-08-17 03:05:35.000000000 +0200
|
||||
+++ chromium-69.0.3497.42/content/renderer/media/webrtc/peer_connection_tracker.cc 2018-08-19 10:00:21.171828248 +0200
|
||||
@@ -113,6 +113,7 @@
|
||||
case webrtc::RtpTransceiverDirection::kInactive:
|
||||
return "'inactive'";
|
||||
}
|
||||
+ return "";
|
||||
}
|
||||
|
||||
static const char* SerializeOptionalDirection(
|
||||
--- chromium-69.0.3497.42/third_party/blink/renderer/core/html/media/media_controls.cc.gcc7 2018-08-17 03:06:24.000000000 +0200
|
||||
+++ chromium-69.0.3497.42/third_party/blink/renderer/core/html/media/media_controls.cc 2018-08-19 12:30:24.128429583 +0200
|
||||
@@ -39,6 +39,7 @@
|
||||
}
|
||||
|
||||
NOTREACHED();
|
||||
+ return AtomicString();
|
||||
}
|
||||
|
||||
MediaControls::MediaControls(HTMLMediaElement& media_element)
|
||||
@@ -1,30 +0,0 @@
|
||||
Drop _FORTIFY_SOURCE=2 from defines
|
||||
|
||||
Gentoo toolchains enable this by default. Removing this prevents spammy
|
||||
warnings about the macro being redefined.
|
||||
|
||||
--- a/build/config/compiler/BUILD.gn
|
||||
+++ b/build/config/compiler/BUILD.gn
|
||||
@@ -1213,22 +1213,6 @@
|
||||
"__STDC_FORMAT_MACROS",
|
||||
]
|
||||
|
||||
- if (!is_debug && !using_sanitizer &&
|
||||
- (!is_linux || !is_clang || is_official_build) &&
|
||||
- current_cpu != "s390x" && current_cpu != "s390" &&
|
||||
- current_cpu != "ppc64" && current_cpu != "ppc64" &&
|
||||
- current_cpu != "mips" && current_cpu != "mips64") {
|
||||
- # _FORTIFY_SOURCE isn't really supported by Clang now, see
|
||||
- # http://llvm.org/bugs/show_bug.cgi?id=16821.
|
||||
- # It seems to work fine with Ubuntu 12 headers though, so use it in
|
||||
- # official builds.
|
||||
- #
|
||||
- # Non-chromium code is not guaranteed to compile cleanly with
|
||||
- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
|
||||
- # disabled, so only do that for Release build.
|
||||
- defines += [ "_FORTIFY_SOURCE=2" ]
|
||||
- }
|
||||
-
|
||||
if (is_mac || is_ios) {
|
||||
cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
|
||||
cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
|
||||
@@ -1,77 +0,0 @@
|
||||
--- chromium-59.0.3071.86/third_party/WebKit/Source/platform/wtf/LinkedHashSet.h.orig 2017-06-06 15:05:38.145247996 +0300
|
||||
+++ chromium-59.0.3071.86/third_party/WebKit/Source/platform/wtf/LinkedHashSet.h 2017-06-06 15:06:13.866246667 +0300
|
||||
@@ -647,31 +647,6 @@
|
||||
friend class LinkedHashSet;
|
||||
};
|
||||
|
||||
-inline void SwapAnchor(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b) {
|
||||
- DCHECK(a.prev_);
|
||||
- DCHECK(a.next_);
|
||||
- DCHECK(b.prev_);
|
||||
- DCHECK(b.next_);
|
||||
- swap(a.prev_, b.prev_);
|
||||
- swap(a.next_, b.next_);
|
||||
- if (b.next_ == &a) {
|
||||
- DCHECK_EQ(b.prev_, &a);
|
||||
- b.next_ = &b;
|
||||
- b.prev_ = &b;
|
||||
- } else {
|
||||
- b.next_->prev_ = &b;
|
||||
- b.prev_->next_ = &b;
|
||||
- }
|
||||
- if (a.next_ == &b) {
|
||||
- DCHECK_EQ(a.prev_, &b);
|
||||
- a.next_ = &a;
|
||||
- a.prev_ = &a;
|
||||
- } else {
|
||||
- a.next_->prev_ = &a;
|
||||
- a.prev_->next_ = &a;
|
||||
- }
|
||||
-}
|
||||
-
|
||||
inline void swap(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b) {
|
||||
DCHECK_NE(a.next_, &a);
|
||||
DCHECK_NE(b.next_, &b);
|
||||
@@ -725,6 +700,31 @@
|
||||
return *this;
|
||||
}
|
||||
|
||||
+inline void SwapAnchor(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b) {
|
||||
+ DCHECK(a.prev_);
|
||||
+ DCHECK(a.next_);
|
||||
+ DCHECK(b.prev_);
|
||||
+ DCHECK(b.next_);
|
||||
+ swap(a.prev_, b.prev_);
|
||||
+ swap(a.next_, b.next_);
|
||||
+ if (b.next_ == &a) {
|
||||
+ DCHECK_EQ(b.prev_, &a);
|
||||
+ b.next_ = &b;
|
||||
+ b.prev_ = &b;
|
||||
+ } else {
|
||||
+ b.next_->prev_ = &b;
|
||||
+ b.prev_->next_ = &b;
|
||||
+ }
|
||||
+ if (a.next_ == &b) {
|
||||
+ DCHECK_EQ(a.prev_, &b);
|
||||
+ a.next_ = &a;
|
||||
+ a.prev_ = &a;
|
||||
+ } else {
|
||||
+ a.next_->prev_ = &a;
|
||||
+ a.prev_->next_ = &a;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
template <typename T, typename U, typename V, typename W>
|
||||
inline void LinkedHashSet<T, U, V, W>::Swap(LinkedHashSet& other) {
|
||||
impl_.swap(other.impl_);
|
||||
|
||||
--- chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.orig 2017-06-06 16:16:43.657661313 +0300
|
||||
+++ chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-06-06 16:16:50.911198032 +0300
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "platform/PlatformExport.h"
|
||||
#include "platform/wtf/ThreadSpecific.h"
|
||||
|
||||
+#include <functional>
|
||||
#include <memory>
|
||||
|
||||
namespace gpu {
|
||||
@@ -0,0 +1,168 @@
|
||||
From 777d166eec22c1894108dce985498f75ac5931e8 Mon Sep 17 00:00:00 2001
|
||||
From: Mike Gilbert <floppym@gentoo.org>
|
||||
Date: Wed, 25 Apr 2018 13:22:49 -0400
|
||||
Subject: [PATCH] Disable various compiler configs
|
||||
|
||||
---
|
||||
build/config/compiler/BUILD.gn | 61 ++++++++++------------------------
|
||||
1 file changed, 18 insertions(+), 43 deletions(-)
|
||||
|
||||
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
|
||||
index 6e38ad782d38..87bbd423f67f 100644
|
||||
--- a/build/config/compiler/BUILD.gn
|
||||
+++ b/build/config/compiler/BUILD.gn
|
||||
@@ -225,8 +225,6 @@ config("compiler") {
|
||||
|
||||
configs += [
|
||||
# See the definitions below.
|
||||
- ":clang_revision",
|
||||
- ":compiler_cpu_abi",
|
||||
":compiler_codegen",
|
||||
]
|
||||
|
||||
@@ -488,18 +486,6 @@ config("compiler") {
|
||||
}
|
||||
}
|
||||
|
||||
- if (is_clang && !is_nacl && current_toolchain == host_toolchain &&
|
||||
- target_os != "chromeos") {
|
||||
- cflags += [
|
||||
- # TODO(hans): Remove this once Clang generates better optimized debug info
|
||||
- # by default. https://crbug.com/765793
|
||||
- "-Xclang",
|
||||
- "-mllvm",
|
||||
- "-Xclang",
|
||||
- "-instcombine-lower-dbg-declare=0",
|
||||
- ]
|
||||
- }
|
||||
-
|
||||
# Print absolute paths in diagnostics. There is no precedent for doing this
|
||||
# on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
|
||||
# Windows developers rely on it (crbug.com/636109) so only do this on Windows.
|
||||
@@ -1473,10 +1459,6 @@ config("default_warnings") {
|
||||
cflags += [
|
||||
# TODO(thakis): https://crbug.com/753973
|
||||
"-Wno-enum-compare-switch",
|
||||
-
|
||||
- # Ignore warnings about MSVC optimization pragmas.
|
||||
- # TODO(thakis): Only for no_chromium_code? http://crbug.com/505314
|
||||
- "-Wno-ignored-pragma-optimize",
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -1518,22 +1500,6 @@ config("chromium_code") {
|
||||
"__STDC_FORMAT_MACROS",
|
||||
]
|
||||
|
||||
- if (!is_debug && !using_sanitizer &&
|
||||
- (!is_linux || !is_clang || is_official_build) &&
|
||||
- current_cpu != "s390x" && current_cpu != "s390" &&
|
||||
- current_cpu != "ppc64" && current_cpu != "ppc64" &&
|
||||
- current_cpu != "mips" && current_cpu != "mips64") {
|
||||
- # _FORTIFY_SOURCE isn't really supported by Clang now, see
|
||||
- # http://llvm.org/bugs/show_bug.cgi?id=16821.
|
||||
- # It seems to work fine with Ubuntu 12 headers though, so use it in
|
||||
- # official builds.
|
||||
- #
|
||||
- # Non-chromium code is not guaranteed to compile cleanly with
|
||||
- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
|
||||
- # disabled, so only do that for Release build.
|
||||
- defines += [ "_FORTIFY_SOURCE=2" ]
|
||||
- }
|
||||
-
|
||||
if (is_mac || is_ios) {
|
||||
cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
|
||||
cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
|
||||
@@ -1863,7 +1829,8 @@ config("default_stack_frames") {
|
||||
}
|
||||
|
||||
# Default "optimization on" config.
|
||||
-config("optimize") {
|
||||
+config("optimize") { }
|
||||
+config("xoptimize") {
|
||||
if (is_win) {
|
||||
# TODO(thakis): Remove is_clang here, https://crbug.com/598772
|
||||
if (is_official_build && full_wpo_on_official && !is_clang) {
|
||||
@@ -1897,7 +1864,8 @@ config("optimize") {
|
||||
}
|
||||
|
||||
# Same config as 'optimize' but without the WPO flag.
|
||||
-config("optimize_no_wpo") {
|
||||
+config("optimize_no_wpo") { }
|
||||
+config("xoptimize_no_wpo") {
|
||||
if (is_win) {
|
||||
# Favor size over speed, /O1 must be before the common flags. The GYP
|
||||
# build also specifies /Os and /GF but these are implied by /O1.
|
||||
@@ -1920,7 +1888,8 @@ config("optimize_no_wpo") {
|
||||
}
|
||||
|
||||
# Turn off optimizations.
|
||||
-config("no_optimize") {
|
||||
+config("no_optimize") { }
|
||||
+config("xno_optimize") {
|
||||
if (is_win) {
|
||||
cflags = [
|
||||
"/Od", # Disable optimization.
|
||||
@@ -1944,7 +1913,8 @@ config("no_optimize") {
|
||||
# Turns up the optimization level. On Windows, this implies whole program
|
||||
# optimization and link-time code generation which is very expensive and should
|
||||
# be used sparingly.
|
||||
-config("optimize_max") {
|
||||
+config("optimize_max") { }
|
||||
+config("xoptimize_max") {
|
||||
if (is_nacl && is_nacl_irt) {
|
||||
# The NaCl IRT is a special case and always wants its own config.
|
||||
# Various components do:
|
||||
@@ -1991,7 +1961,8 @@ config("optimize_max") {
|
||||
#
|
||||
# TODO(crbug.com/621335) - rework how all of these configs are related
|
||||
# so that we don't need this disclaimer.
|
||||
-config("optimize_speed") {
|
||||
+config("optimize_speed") { }
|
||||
+config("xoptimize_speed") {
|
||||
if (is_nacl && is_nacl_irt) {
|
||||
# The NaCl IRT is a special case and always wants its own config.
|
||||
# Various components do:
|
||||
@@ -2029,7 +2000,8 @@ config("optimize_speed") {
|
||||
}
|
||||
}
|
||||
|
||||
-config("optimize_fuzzing") {
|
||||
+config("optimize_fuzzing") { }
|
||||
+config("xoptimize_fuzzing") {
|
||||
cflags = [ "-O1" ] + common_optimize_on_cflags
|
||||
ldflags = common_optimize_on_ldflags
|
||||
visibility = [ ":default_optimization" ]
|
||||
@@ -2115,7 +2087,8 @@ config("afdo") {
|
||||
# configs += [ "//build/config/compiler:symbols" ]
|
||||
|
||||
# Full symbols.
|
||||
-config("symbols") {
|
||||
+config("symbols") { }
|
||||
+config("xsymbols") {
|
||||
if (is_win) {
|
||||
if (use_goma || is_clang) {
|
||||
# Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
|
||||
@@ -2213,7 +2186,8 @@ config("symbols") {
|
||||
# Minimal symbols.
|
||||
# This config guarantees to hold symbol for stack trace which are shown to user
|
||||
# when crash happens in unittests running on buildbot.
|
||||
-config("minimal_symbols") {
|
||||
+config("minimal_symbols") { }
|
||||
+config("xminimal_symbols") {
|
||||
if (is_win) {
|
||||
# Linker symbols for backtraces only.
|
||||
cflags = []
|
||||
@@ -2244,7 +2218,8 @@ config("minimal_symbols") {
|
||||
}
|
||||
|
||||
# No symbols.
|
||||
-config("no_symbols") {
|
||||
+config("no_symbols") { }
|
||||
+config("xno_symbols") {
|
||||
if (!is_win) {
|
||||
cflags = [ "-g0" ]
|
||||
asmflags = cflags
|
||||
--
|
||||
2.18.0
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
diff --git a/base/numerics/safe_math_shared_impl.h b/base/numerics/safe_math_shared_impl.h
|
||||
index 99f230ce7e9a..de2415d402f5 100644
|
||||
--- a/base/numerics/safe_math_shared_impl.h
|
||||
+++ b/base/numerics/safe_math_shared_impl.h
|
||||
@@ -21,8 +21,7 @@
|
||||
#if !defined(__native_client__) && \
|
||||
((defined(__clang__) && \
|
||||
((__clang_major__ > 3) || \
|
||||
- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \
|
||||
- (defined(__GNUC__) && __GNUC__ >= 5))
|
||||
+ (__clang_major__ == 3 && __clang_minor__ >= 4))))
|
||||
#include "base/numerics/safe_math_clang_gcc_impl.h"
|
||||
#define BASE_HAS_OPTIMIZED_SAFE_MATH (1)
|
||||
#else
|
||||
@@ -1,36 +0,0 @@
|
||||
--- a/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h
|
||||
+++ b/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h
|
||||
@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents {
|
||||
allocation_length_(0),
|
||||
data_(data),
|
||||
data_length_(0),
|
||||
- kind_(AllocationKind::kNormal),
|
||||
+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal),
|
||||
deleter_(deleter) {}
|
||||
DataHandle(void* allocation_base,
|
||||
size_t allocation_length,
|
||||
@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents {
|
||||
reinterpret_cast<uintptr_t>(allocation_base_) +
|
||||
allocation_length_);
|
||||
switch (kind_) {
|
||||
- case AllocationKind::kNormal:
|
||||
+ case WTF::ArrayBufferContents::AllocationKind::kNormal:
|
||||
DCHECK(deleter_);
|
||||
deleter_(data_);
|
||||
return;
|
||||
- case AllocationKind::kReservation:
|
||||
+ case WTF::ArrayBufferContents::AllocationKind::kReservation:
|
||||
ReleaseReservedMemory(allocation_base_, allocation_length_);
|
||||
return;
|
||||
}
|
||||
--- a/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.orig 2017-08-15 12:45:59.433532111 +0000
|
||||
+++ b/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-08-15 17:52:59.691328825 +0000
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
#include "webrtc/modules/audio_processing/aec3/aec_state.h"
|
||||
|
||||
-#include <math.h>
|
||||
+#include <cmath>
|
||||
#include <numeric>
|
||||
#include <vector>
|
||||
|
||||
@@ -1,68 +0,0 @@
|
||||
--- a/tools/gn/bootstrap/bootstrap.py
|
||||
+++ b/tools/gn/bootstrap/bootstrap.py
|
||||
@@ -179,6 +179,7 @@ def build_gn_with_ninja_manually(tempdir, options):
|
||||
|
||||
write_buildflag_header_manually(root_gen_dir, 'base/debug/debugging_flags.h',
|
||||
{
|
||||
+ 'ENABLE_LOCATION_SOURCE': 'false',
|
||||
'ENABLE_PROFILING': 'false',
|
||||
'CAN_UNWIND_WITH_FRAME_POINTERS': 'false'
|
||||
})
|
||||
@@ -204,7 +205,7 @@ def build_gn_with_ninja_manually(tempdir, options):
|
||||
|
||||
write_gn_ninja(os.path.join(tempdir, 'build.ninja'),
|
||||
root_gen_dir, options)
|
||||
- cmd = ['ninja', '-C', tempdir]
|
||||
+ cmd = ['ninja', '-C', tempdir, '-w', 'dupbuild=err']
|
||||
if options.verbose:
|
||||
cmd.append('-v')
|
||||
|
||||
@@ -458,6 +459,7 @@ def write_gn_ninja(path, root_gen_dir, options):
|
||||
'base/metrics/bucket_ranges.cc',
|
||||
'base/metrics/field_trial.cc',
|
||||
'base/metrics/field_trial_param_associator.cc',
|
||||
+ 'base/metrics/field_trial_params.cc',
|
||||
'base/metrics/histogram.cc',
|
||||
'base/metrics/histogram_base.cc',
|
||||
'base/metrics/histogram_functions.cc',
|
||||
@@ -507,6 +509,7 @@ def write_gn_ninja(path, root_gen_dir, options):
|
||||
'base/task_scheduler/scheduler_lock_impl.cc',
|
||||
'base/task_scheduler/scheduler_single_thread_task_runner_manager.cc',
|
||||
'base/task_scheduler/scheduler_worker.cc',
|
||||
+ 'base/task_scheduler/scheduler_worker_pool.cc',
|
||||
'base/task_scheduler/scheduler_worker_pool_impl.cc',
|
||||
'base/task_scheduler/scheduler_worker_pool_params.cc',
|
||||
'base/task_scheduler/scheduler_worker_stack.cc',
|
||||
@@ -523,6 +526,7 @@ def write_gn_ninja(path, root_gen_dir, options):
|
||||
'base/third_party/icu/icu_utf.cc',
|
||||
'base/third_party/nspr/prtime.cc',
|
||||
'base/threading/post_task_and_reply_impl.cc',
|
||||
+ 'base/threading/scoped_blocking_call.cc',
|
||||
'base/threading/sequence_local_storage_map.cc',
|
||||
'base/threading/sequenced_task_runner_handle.cc',
|
||||
'base/threading/sequenced_worker_pool.cc',
|
||||
@@ -579,7 +583,6 @@ def write_gn_ninja(path, root_gen_dir, options):
|
||||
'base/unguessable_token.cc',
|
||||
'base/value_iterators.cc',
|
||||
'base/values.cc',
|
||||
- 'base/value_iterators.cc',
|
||||
'base/vlog.cc',
|
||||
])
|
||||
|
||||
@@ -652,7 +655,6 @@ def write_gn_ninja(path, root_gen_dir, options):
|
||||
static_libraries['base']['sources'].extend([
|
||||
'base/memory/shared_memory_handle_posix.cc',
|
||||
'base/memory/shared_memory_posix.cc',
|
||||
- 'base/memory/shared_memory_tracker.cc',
|
||||
'base/nix/xdg_util.cc',
|
||||
'base/process/internal_linux.cc',
|
||||
'base/process/memory_linux.cc',
|
||||
@@ -827,7 +829,7 @@ def build_gn_with_gn(temp_gn, build_dir, options):
|
||||
cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args]
|
||||
check_call(cmd)
|
||||
|
||||
- cmd = ['ninja', '-C', build_dir]
|
||||
+ cmd = ['ninja', '-C', build_dir, '-w', 'dupbuild=err']
|
||||
if options.verbose:
|
||||
cmd.append('-v')
|
||||
cmd.append('gn')
|
||||
@@ -1,13 +0,0 @@
|
||||
Index: tools/gn/bootstrap/bootstrap.py
|
||||
diff --git a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py
|
||||
index 38cfb117d29c3895291379f00d8dc8c8b0727474..679170e610f8292bcbeb76508fd247d322a69c79 100755
|
||||
--- a/tools/gn/bootstrap/bootstrap.py
|
||||
+++ b/tools/gn/bootstrap/bootstrap.py
|
||||
@@ -385,6 +385,7 @@ def write_gn_ninja(path, root_gen_dir, options):
|
||||
'base/base_switches.cc',
|
||||
'base/build_time.cc',
|
||||
'base/callback_internal.cc',
|
||||
+ 'base/callback_helpers.cc',
|
||||
'base/command_line.cc',
|
||||
'base/debug/activity_tracker.cc',
|
||||
'base/debug/alias.cc',
|
||||
@@ -1,18 +0,0 @@
|
||||
--- a/tools/gn/bootstrap/bootstrap.py
|
||||
+++ b/tools/gn/bootstrap/bootstrap.py
|
||||
@@ -546,6 +546,7 @@ def write_gn_ninja(path, root_gen_dir, options):
|
||||
'base/timer/timer.cc',
|
||||
'base/trace_event/category_registry.cc',
|
||||
'base/trace_event/event_name_filter.cc',
|
||||
+ 'base/trace_event/freed_object_tracker.cc',
|
||||
'base/trace_event/heap_profiler_allocation_context.cc',
|
||||
'base/trace_event/heap_profiler_allocation_context_tracker.cc',
|
||||
'base/trace_event/heap_profiler_allocation_register.cc',
|
||||
@@ -605,7 +606,6 @@ def write_gn_ninja(path, root_gen_dir, options):
|
||||
'base/strings/string16.cc',
|
||||
'base/synchronization/condition_variable_posix.cc',
|
||||
'base/synchronization/lock_impl_posix.cc',
|
||||
- 'base/synchronization/read_write_lock_posix.cc',
|
||||
'base/sys_info_posix.cc',
|
||||
'base/task_scheduler/task_tracker_posix.cc',
|
||||
'base/threading/platform_thread_internal_posix.cc',
|
||||
@@ -1,13 +0,0 @@
|
||||
Index: tools/gn/bootstrap/bootstrap.py
|
||||
diff --git a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py
|
||||
index 6f2f5b1264519ea38cc36fb0b7e2cc24c378ca7a..0b03d2626b358fb90ab39d737679ee47bd60303b 100755
|
||||
--- a/tools/gn/bootstrap/bootstrap.py
|
||||
+++ b/tools/gn/bootstrap/bootstrap.py
|
||||
@@ -487,6 +487,7 @@ def write_gn_ninja(path, root_gen_dir, options):
|
||||
'base/sys_info.cc',
|
||||
'base/task_runner.cc',
|
||||
'base/task_scheduler/delayed_task_manager.cc',
|
||||
+ 'base/task_scheduler/environment_config.cc',
|
||||
'base/task_scheduler/post_task.cc',
|
||||
'base/task_scheduler/priority_queue.cc',
|
||||
'base/task_scheduler/scheduler_lock_impl.cc',
|
||||
@@ -1,135 +0,0 @@
|
||||
From 424584b4984bde7c831f42e9fb47f1ad583a1c46 Mon Sep 17 00:00:00 2001
|
||||
From: jshin <jshin@chromium.org>
|
||||
Date: Fri, 21 Oct 2016 01:15:50 -0700
|
||||
Subject: [PATCH] Update aspirational_scripts per Unicode 9
|
||||
|
||||
This is a preparation to update ICU to 58.1.
|
||||
Without this change, ICU update CL cannot be tested on
|
||||
trybots because a compile will fail due to '#error' checking
|
||||
if ICU version is less than 58.
|
||||
|
||||
BUG=637001
|
||||
TEST=None
|
||||
TBR=pkasting@chromium.org
|
||||
|
||||
Review-Url: https://chromiumcodereview.appspot.com/2436113003
|
||||
Cr-Commit-Position: refs/heads/master@{#426749}
|
||||
---
|
||||
components/url_formatter/url_formatter.cc | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/components/url_formatter/url_formatter.cc b/components/url_formatter/url_formatter.cc
|
||||
index 4455db3..2b82c0c 100644
|
||||
--- a/components/url_formatter/url_formatter.cc
|
||||
+++ b/components/url_formatter/url_formatter.cc
|
||||
@@ -428,9 +428,9 @@ void IDNSpoofChecker::SetAllowedUnicodeSet(UErrorCode* status) {
|
||||
// section at
|
||||
// http://www.unicode.org/Public/security/latest/xidmodifications.txt) are
|
||||
// are added to the allowed set. The list has to be updated when a new
|
||||
- // version of Unicode is released. The current version is 8.0.0 and ICU 58
|
||||
- // will have Unicode 9.0 data.
|
||||
-#if U_ICU_VERSION_MAJOR_NUM < 58
|
||||
+ // version of Unicode is released. The current version is 9.0.0 and ICU 60
|
||||
+ // will have Unicode 10.0 data.
|
||||
+#if U_ICU_VERSION_MAJOR_NUM < 60
|
||||
const icu::UnicodeSet aspirational_scripts(
|
||||
icu::UnicodeString(
|
||||
// Unified Canadian Syllabics
|
||||
@@ -444,13 +444,13 @@ void IDNSpoofChecker::SetAllowedUnicodeSet(UErrorCode* status) {
|
||||
// Yi
|
||||
"\\uA000-\\uA48C"
|
||||
// Miao
|
||||
- "\\U00016F00-\\U00016F44\\U00016F50-\\U00016F7F"
|
||||
+ "\\U00016F00-\\U00016F44\\U00016F50-\\U00016F7E"
|
||||
"\\U00016F8F-\\U00016F9F]",
|
||||
-1, US_INV),
|
||||
*status);
|
||||
allowed_set.addAll(aspirational_scripts);
|
||||
#else
|
||||
-#error "Update aspirational_scripts per Unicode 9.0"
|
||||
+#error "Update aspirational_scripts per Unicode 10.0"
|
||||
#endif
|
||||
|
||||
// U+0338 is included in the recommended set, while U+05F4 and U+2027 are in
|
||||
--
|
||||
2.10.2
|
||||
|
||||
From e60b571faa3f14dd9119a6792dccf12f8bf80192 Mon Sep 17 00:00:00 2001
|
||||
From: jshin <jshin@chromium.org>
|
||||
Date: Fri, 21 Oct 2016 12:20:05 -0700
|
||||
Subject: [PATCH] Prepare to upgrade ICU to 58 part 2
|
||||
|
||||
U_LB_COUNT is assumed to be 40 in Blink line breaking code, but it's
|
||||
43 in ICU 58/Unicode 9.
|
||||
|
||||
Three new classes (Emoji Base, Emoji Modifier, and ZWJ) should behave
|
||||
identically whether or not 'word-break: break-all' is in effect.
|
||||
|
||||
BUG=637001
|
||||
TEST=TextBreakIterator.cpp is compiled without an error with ICU 58.
|
||||
R=kojii@chromium.org
|
||||
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
|
||||
|
||||
Review-Url: https://chromiumcodereview.appspot.com/2440923002
|
||||
Cr-Commit-Position: refs/heads/master@{#426860}
|
||||
---
|
||||
.../WebKit/Source/platform/text/TextBreakIterator.cpp | 16 ++++++++++++----
|
||||
1 file changed, 12 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp b/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
|
||||
index 568dc0a..36121eb 100644
|
||||
--- a/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
|
||||
+++ b/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
|
||||
@@ -28,6 +28,9 @@
|
||||
#include "wtf/StdLibExtras.h"
|
||||
#include "wtf/text/CharacterNames.h"
|
||||
|
||||
+#include <unicode/uchar.h>
|
||||
+#include <unicode/uvernum.h>
|
||||
+
|
||||
namespace blink {
|
||||
|
||||
unsigned numGraphemeClusters(const String& string) {
|
||||
@@ -129,6 +132,11 @@ static const unsigned char asciiLineBreakTable[][(asciiLineBreakTableLastChar -
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
+#if U_ICU_VERSION_MAJOR_NUM >= 58
|
||||
+#define BA_LB_COUNT (U_LB_COUNT - 3)
|
||||
+#else
|
||||
+#define BA_LB_COUNT U_LB_COUNT
|
||||
+#endif
|
||||
// Line breaking table for CSS word-break: break-all. This table differs from
|
||||
// asciiLineBreakTable in:
|
||||
// - Indices are Line Breaking Classes defined in UAX#14 Unicode Line Breaking
|
||||
@@ -136,7 +144,7 @@ static const unsigned char asciiLineBreakTable[][(asciiLineBreakTableLastChar -
|
||||
// - 1 indicates additional break opportunities. 0 indicates to fallback to
|
||||
// normal line break, not "prohibit break."
|
||||
// clang-format off
|
||||
-static const unsigned char breakAllLineBreakClassTable[][U_LB_COUNT / 8 + 1] = {
|
||||
+static const unsigned char breakAllLineBreakClassTable[][BA_LB_COUNT / 8 + 1] = {
|
||||
// XX AI AL B2 BA BB BK CB CL CM CR EX GL HY ID IN IS LF NS NU OP PO PR QU SA SG SP SY ZW NL WJ H2 H3 JL JT JV CP CJ HL RI
|
||||
{ B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0) }, // XX
|
||||
{ B(0, 1, 1, 0, 1, 0, 0, 0), B(0, 0, 0, 0, 0, 1, 0, 0), B(0, 0, 0, 1, 1, 0, 1, 0), B(1, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 1, 0) }, // AI
|
||||
@@ -190,7 +198,7 @@ static_assert(WTF_ARRAY_LENGTH(asciiLineBreakTable) ==
|
||||
asciiLineBreakTableLastChar - asciiLineBreakTableFirstChar +
|
||||
1,
|
||||
"asciiLineBreakTable should be consistent");
|
||||
-static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == U_LB_COUNT,
|
||||
+static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == BA_LB_COUNT,
|
||||
"breakAllLineBreakClassTable should be consistent");
|
||||
|
||||
static inline bool shouldBreakAfter(UChar lastCh, UChar ch, UChar nextCh) {
|
||||
@@ -226,8 +234,8 @@ static inline ULineBreak lineBreakPropertyValue(UChar lastCh, UChar ch) {
|
||||
|
||||
static inline bool shouldBreakAfterBreakAll(ULineBreak lastLineBreak,
|
||||
ULineBreak lineBreak) {
|
||||
- if (lineBreak >= 0 && lineBreak < U_LB_COUNT && lastLineBreak >= 0 &&
|
||||
- lastLineBreak < U_LB_COUNT) {
|
||||
+ if (lineBreak >= 0 && lineBreak < BA_LB_COUNT && lastLineBreak >= 0 &&
|
||||
+ lastLineBreak < BA_LB_COUNT) {
|
||||
const unsigned char* tableRow = breakAllLineBreakClassTable[lastLineBreak];
|
||||
return tableRow[lineBreak / 8] & (1 << (lineBreak % 8));
|
||||
}
|
||||
--
|
||||
2.10.2
|
||||
@@ -0,0 +1,78 @@
|
||||
diff -Nuar a/third_party/skia/src/ports/SkFontHost_FreeType.cpp b/third_party/skia/src/ports/SkFontHost_FreeType.cpp
|
||||
--- a/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2018-09-04 22:11:58.000000000 +0300
|
||||
+++ b/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2018-09-11 23:05:41.613517599 +0300
|
||||
@@ -112,8 +112,6 @@
|
||||
: fGetVarDesignCoordinates(nullptr)
|
||||
, fGetVarAxisFlags(nullptr)
|
||||
, fLibrary(nullptr)
|
||||
- , fIsLCDSupported(false)
|
||||
- , fLCDExtra(0)
|
||||
{
|
||||
if (FT_New_Library(&gFTMemory, &fLibrary)) {
|
||||
return;
|
||||
@@ -173,12 +171,7 @@
|
||||
}
|
||||
#endif
|
||||
|
||||
- // Setup LCD filtering. This reduces color fringes for LCD smoothed glyphs.
|
||||
- // The default has changed over time, so this doesn't mean the same thing to all users.
|
||||
- if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) {
|
||||
- fIsLCDSupported = true;
|
||||
- fLCDExtra = 2; //Using a filter adds one full pixel to each side.
|
||||
- }
|
||||
+ FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT);
|
||||
}
|
||||
~FreeTypeLibrary() {
|
||||
if (fLibrary) {
|
||||
@@ -187,8 +180,6 @@
|
||||
}
|
||||
|
||||
FT_Library library() { return fLibrary; }
|
||||
- bool isLCDSupported() { return fIsLCDSupported; }
|
||||
- int lcdExtra() { return fLCDExtra; }
|
||||
|
||||
// FT_Get_{MM,Var}_{Blend,Design}_Coordinates were added in FreeType 2.7.1.
|
||||
// Prior to this there was no way to get the coordinates out of the FT_Face.
|
||||
@@ -205,8 +196,6 @@
|
||||
|
||||
private:
|
||||
FT_Library fLibrary;
|
||||
- bool fIsLCDSupported;
|
||||
- int fLCDExtra;
|
||||
|
||||
// FT_Library_SetLcdFilterWeights was introduced in FreeType 2.4.0.
|
||||
// The following platforms provide FreeType of at least 2.4.0.
|
||||
@@ -704,17 +693,6 @@
|
||||
rec->fTextSize = SkIntToScalar(1 << 14);
|
||||
}
|
||||
|
||||
- if (isLCD(*rec)) {
|
||||
- // TODO: re-work so that FreeType is set-up and selected by the SkFontMgr.
|
||||
- SkAutoMutexAcquire ama(gFTMutex);
|
||||
- ref_ft_library();
|
||||
- if (!gFTLibrary->isLCDSupported()) {
|
||||
- // If the runtime Freetype library doesn't support LCD, disable it here.
|
||||
- rec->fMaskFormat = SkMask::kA8_Format;
|
||||
- }
|
||||
- unref_ft_library();
|
||||
- }
|
||||
-
|
||||
SkPaint::Hinting h = rec->getHinting();
|
||||
if (SkPaint::kFull_Hinting == h && !isLCD(*rec)) {
|
||||
// collapse full->normal hinting if we're not doing LCD
|
||||
@@ -1109,11 +1087,11 @@
|
||||
void SkScalerContext_FreeType::updateGlyphIfLCD(SkGlyph* glyph) {
|
||||
if (isLCD(fRec)) {
|
||||
if (fLCDIsVert) {
|
||||
- glyph->fHeight += gFTLibrary->lcdExtra();
|
||||
- glyph->fTop -= gFTLibrary->lcdExtra() >> 1;
|
||||
+ glyph->fHeight += 2;
|
||||
+ glyph->fTop -= 1;
|
||||
} else {
|
||||
- glyph->fWidth += gFTLibrary->lcdExtra();
|
||||
- glyph->fLeft -= gFTLibrary->lcdExtra() >> 1;
|
||||
+ glyph->fWidth += 2;
|
||||
+ glyph->fLeft -= 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,73 +0,0 @@
|
||||
diff -upr chromium-59.0.3071.86.orig/v8/src/objects/hash-table.h chromium-59.0.3071.86/v8/src/objects/hash-table.h
|
||||
--- chromium-59.0.3071.86.orig/v8/src/objects/hash-table.h 2017-06-05 22:04:29.000000000 +0300
|
||||
+++ chromium-59.0.3071.86/v8/src/objects/hash-table.h 2017-06-06 14:35:41.558245559 +0300
|
||||
@@ -135,22 +135,10 @@ class HashTable : public HashTableBase {
|
||||
public:
|
||||
typedef Shape ShapeT;
|
||||
|
||||
- // Wrapper methods
|
||||
- inline uint32_t Hash(Key key) {
|
||||
- if (Shape::UsesSeed) {
|
||||
- return Shape::SeededHash(key, GetHeap()->HashSeed());
|
||||
- } else {
|
||||
- return Shape::Hash(key);
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- inline uint32_t HashForObject(Key key, Object* object) {
|
||||
- if (Shape::UsesSeed) {
|
||||
- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
|
||||
- } else {
|
||||
- return Shape::HashForObject(key, object);
|
||||
- }
|
||||
- }
|
||||
+ // Wrapper methods. Defined in src/objects-inl.h
|
||||
+ // to break a cycle with src/heap/heap.h.
|
||||
+ inline uint32_t Hash(Key key);
|
||||
+ inline uint32_t HashForObject(Key key, Object* object);
|
||||
|
||||
// Returns a new HashTable object.
|
||||
MUST_USE_RESULT static Handle<Derived> New(
|
||||
diff -upr chromium-59.0.3071.86.orig/v8/src/objects-body-descriptors.h chromium-59.0.3071.86/v8/src/objects-body-descriptors.h
|
||||
--- chromium-59.0.3071.86.orig/v8/src/objects-body-descriptors.h 2017-06-05 22:04:29.000000000 +0300
|
||||
+++ chromium-59.0.3071.86/v8/src/objects-body-descriptors.h 2017-06-06 14:35:41.554912132 +0300
|
||||
@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public
|
||||
|
||||
template <typename StaticVisitor>
|
||||
static inline void IterateBody(HeapObject* obj, int object_size) {
|
||||
- IterateBody(obj);
|
||||
+ IterateBody<StaticVisitor>(obj);
|
||||
}
|
||||
};
|
||||
|
||||
diff -upr chromium-59.0.3071.86.orig/v8/src/objects-inl.h chromium-59.0.3071.86/v8/src/objects-inl.h
|
||||
--- chromium-59.0.3071.86.orig/v8/src/objects-inl.h 2017-06-05 22:04:29.000000000 +0300
|
||||
+++ chromium-59.0.3071.86/v8/src/objects-inl.h 2017-06-06 14:35:41.558245559 +0300
|
||||
@@ -46,6 +46,27 @@
|
||||
namespace v8 {
|
||||
namespace internal {
|
||||
|
||||
+template <typename Derived, typename Shape, typename Key>
|
||||
+uint32_t HashTable<Derived, Shape, Key>::Hash(Key key) {
|
||||
+ if (Shape::UsesSeed) {
|
||||
+ return Shape::SeededHash(key, GetHeap()->HashSeed());
|
||||
+ } else {
|
||||
+ return Shape::Hash(key);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+
|
||||
+template <typename Derived, typename Shape, typename Key>
|
||||
+uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key,
|
||||
+ Object* object) {
|
||||
+ if (Shape::UsesSeed) {
|
||||
+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
|
||||
+ } else {
|
||||
+ return Shape::HashForObject(key, object);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+
|
||||
PropertyDetails::PropertyDetails(Smi* smi) {
|
||||
value_ = smi->value();
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
Minimal patch to get chromium to compile with widevine support
|
||||
|
||||
https://bugs.gentoo.org/show_bug.cgi?id=547630
|
||||
|
||||
--- a/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||
+++ b/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||
@@ -10,6 +10,7 @@
|
||||
|
||||
#include "third_party/widevine/cdm/widevine_cdm_common.h"
|
||||
|
||||
+#define WIDEVINE_CDM_VERSION_STRING "unknown"
|
||||
#define WIDEVINE_CDM_AVAILABLE
|
||||
|
||||
#endif // WIDEVINE_CDM_VERSION_H_
|
||||
@@ -0,0 +1,39 @@
|
||||
Minimal patch to get chromium to compile with widevine support.
|
||||
|
||||
Exactly the same as -r1, but we now need to patch
|
||||
ninja to pretty please not terminate our build.
|
||||
|
||||
caveat emptor: it's in no way clear that building chromium this
|
||||
way is safer, from a security perspective, than whatever Google
|
||||
Chrome does.
|
||||
|
||||
Upstream appears to be cooking up a code-signing trust-chain
|
||||
which may protect users against malicious cdm blobs; I doubt
|
||||
we benefit from these using this kludge. Ideally, someone
|
||||
would look into this more carefully than I have ... tbh as
|
||||
soon as I got my "stories" back, I pretty much lost interest :)
|
||||
|
||||
-gmt
|
||||
|
||||
--
|
||||
--- a/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||
+++ b/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||
@@ -10,6 +10,7 @@
|
||||
|
||||
#include "third_party/widevine/cdm/widevine_cdm_common.h"
|
||||
|
||||
+#define WIDEVINE_CDM_VERSION_STRING "unknown"
|
||||
#define WIDEVINE_CDM_AVAILABLE
|
||||
|
||||
#endif // WIDEVINE_CDM_VERSION_H_
|
||||
--- a/third_party/widevine/cdm/BUILD.gn
|
||||
+++ b/third_party/widevine/cdm/BUILD.gn
|
||||
@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev
|
||||
# Internal Cast builds set enable_widevine=true to bring in Widevine support.
|
||||
# TODO(xhwang): Support component updated CDM on other platforms and remove this
|
||||
# assert.
|
||||
-assert(!enable_widevine || is_win || is_mac || is_chromecast,
|
||||
+assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux,
|
||||
"Component updated CDM only supported on Windows and Mac for now.")
|
||||
|
||||
widevine_arch = current_cpu
|
||||
@@ -1,10 +0,0 @@
|
||||
diff -upr chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||
--- chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-14 01:05:17.000000000 +0200
|
||||
+++ chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-21 19:18:51.287978456 +0200
|
||||
@@ -12,4 +12,6 @@
|
||||
|
||||
#define WIDEVINE_CDM_AVAILABLE
|
||||
|
||||
+#define WIDEVINE_CDM_VERSION_STRING "@WIDEVINE_VERSION@"
|
||||
+
|
||||
#endif // WIDEVINE_CDM_VERSION_H_
|
||||
Executable
+52
@@ -0,0 +1,52 @@
|
||||
From db82db1b609f30d144d45477f55697818bcd363c Mon Sep 17 00:00:00 2001
|
||||
From: Vlad Tsyrklevich <vtsyrklevich@chromium.org>
|
||||
Date: Tue, 31 Jul 2018 01:03:22 +0000
|
||||
Subject: [PATCH] Fix cfi-icall failure with use_system_libjpeg=true
|
||||
|
||||
JPEGImageReader::AllocateSampleArray() can call the function pointer
|
||||
(*info_.mem->alloc_sarray) which can be set by the systems non-CFI
|
||||
enabled libjpeg DSO when chromium is built with use_system_libjpeg=true.
|
||||
Disable cfi-icall for that method.
|
||||
|
||||
Bug: 866290
|
||||
Change-Id: I6d9bbf08c514d6d5f48ad34c3802c63419ed1223
|
||||
Reviewed-on: https://chromium-review.googlesource.com/1155927
|
||||
Reviewed-by: Kentaro Hara <haraken@chromium.org>
|
||||
Commit-Queue: Vlad Tsyrklevich <vtsyrklevich@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#579270}
|
||||
---
|
||||
.../renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc | 2 +-
|
||||
third_party/blink/renderer/platform/wtf/compiler.h | 2 ++
|
||||
2 files changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
|
||||
index a1e440f6eed5..fd4e72ba053c 100644
|
||||
--- a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
|
||||
+++ b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
|
||||
@@ -643,7 +643,7 @@ class JPEGImageReader final {
|
||||
IntSize UvSize() const { return uv_size_; }
|
||||
|
||||
private:
|
||||
- JSAMPARRAY AllocateSampleArray() {
|
||||
+ NO_SANITIZE_CFI_ICALL JSAMPARRAY AllocateSampleArray() {
|
||||
// Some output color spaces don't need the sample array: don't allocate in that
|
||||
// case.
|
||||
#if defined(TURBO_JPEG_RGB_SWIZZLE)
|
||||
diff --git a/third_party/blink/renderer/platform/wtf/compiler.h b/third_party/blink/renderer/platform/wtf/compiler.h
|
||||
index 51595afdc955..5225a70309d6 100644
|
||||
--- a/third_party/blink/renderer/platform/wtf/compiler.h
|
||||
+++ b/third_party/blink/renderer/platform/wtf/compiler.h
|
||||
@@ -57,8 +57,10 @@
|
||||
#if defined(__clang__)
|
||||
#define NO_SANITIZE_UNRELATED_CAST \
|
||||
__attribute__((no_sanitize("cfi-unrelated-cast", "vptr")))
|
||||
+#define NO_SANITIZE_CFI_ICALL __attribute__((no_sanitize("cfi-icall")))
|
||||
#else
|
||||
#define NO_SANITIZE_UNRELATED_CAST
|
||||
+#define NO_SANITIZE_CFI_ICALL
|
||||
#endif
|
||||
|
||||
#endif /* WTF_Compiler_h */
|
||||
--
|
||||
2.18.0
|
||||
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
diff -Nuar a/third_party/libdrm/src/xf86drm.h b/third_party/libdrm/src/xf86drm.h
|
||||
--- a/third_party/libdrm/src/xf86drm.h 2018-09-12 11:32:38.000000000 +0300
|
||||
+++ b/third_party/libdrm/src/xf86drm.h 2018-09-12 13:53:15.815152841 +0300
|
||||
@@ -35,6 +35,7 @@
|
||||
#define _XF86DRM_H_
|
||||
|
||||
#include <stdarg.h>
|
||||
+#include <sys/sysmacros.h>
|
||||
#include <sys/types.h>
|
||||
#include <stdint.h>
|
||||
#include <drm.h>
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
From 20f81a066ffdf6bd30fb4b696b8b3e101368e2f6 Mon Sep 17 00:00:00 2001
|
||||
From: Vlad Tsyrklevich <vtsyrklevich@chromium.org>
|
||||
Date: Tue, 31 Jul 2018 23:21:09 +0000
|
||||
Subject: [PATCH] Only disable cfi-icall when use_system_libjpeg=true
|
||||
|
||||
Bug: 866290
|
||||
Change-Id: Ic5d175b3b854665f50781650406d599d09ee9849
|
||||
Reviewed-on: https://chromium-review.googlesource.com/1157136
|
||||
Reviewed-by: Kentaro Hara <haraken@chromium.org>
|
||||
Commit-Queue: Vlad Tsyrklevich <vtsyrklevich@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#579614}
|
||||
---
|
||||
.../platform/image-decoders/jpeg/jpeg_image_decoder.cc | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
|
||||
index fd4e72ba053c..afa90d83efee 100644
|
||||
--- a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
|
||||
+++ b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
|
||||
@@ -643,7 +643,10 @@ class JPEGImageReader final {
|
||||
IntSize UvSize() const { return uv_size_; }
|
||||
|
||||
private:
|
||||
- NO_SANITIZE_CFI_ICALL JSAMPARRAY AllocateSampleArray() {
|
||||
+#if defined(USE_SYSTEM_LIBJPEG)
|
||||
+ NO_SANITIZE_CFI_ICALL
|
||||
+#endif
|
||||
+ JSAMPARRAY AllocateSampleArray() {
|
||||
// Some output color spaces don't need the sample array: don't allocate in that
|
||||
// case.
|
||||
#if defined(TURBO_JPEG_RGB_SWIZZLE)
|
||||
--
|
||||
2.18.0
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
Disable AVX2 code to prevent build failure with GCC
|
||||
|
||||
Bug: https://bugs.gentoo.org/608640
|
||||
|
||||
--- a/third_party/skia/include/core/SkPreConfig.h
|
||||
+++ b/third_party/skia/include/core/SkPreConfig.h
|
||||
@@ -125,7 +125,7 @@
|
||||
// These checks must be done in descending order to ensure we set the highest
|
||||
// available SSE level.
|
||||
#if defined(__AVX2__)
|
||||
- #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_AVX2
|
||||
+ #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_AVX
|
||||
#elif defined(__AVX__)
|
||||
#define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_AVX
|
||||
#elif defined(__SSE4_2__)
|
||||
@@ -13,47 +13,31 @@
|
||||
<IsA>app:gui</IsA>
|
||||
<Summary>A WebKit powered web browser</Summary>
|
||||
<Description>Chromium-browser is an open-source web browser, powered by WebKit.</Description>
|
||||
<Archive sha1sum="b6e0904fbbbd62df498f395763e3c02025d9353f" type="tarxz">https://commondatastorage.googleapis.com/chromium-browser-official/chromium-62.0.3202.97.tar.xz</Archive>
|
||||
<Archive sha1sum="0f9fcee4607d5a9a5c5333c4eccf6654c4dfbce1" type="tarxz">https://commondatastorage.googleapis.com/chromium-browser-official/chromium-69.0.3497.81.tar.xz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency>alsa-lib-devel</Dependency>
|
||||
<Dependency>at-spi2-atk-devel</Dependency>
|
||||
<Dependency>atk-devel</Dependency>
|
||||
<Dependency>cairo-devel</Dependency>
|
||||
<Dependency>cups-devel</Dependency>
|
||||
<Dependency>dbus-devel</Dependency>
|
||||
<Dependency>desktop-file-utils</Dependency>
|
||||
<Dependency>faac-devel</Dependency>
|
||||
<!--Dependency>ffmpeg-devel</Dependency-->
|
||||
<Dependency>flac-devel</Dependency>
|
||||
<Dependency>pciutils-devel</Dependency>
|
||||
<Dependency>flac-devel</Dependency>
|
||||
<Dependency>fontconfig-devel</Dependency>
|
||||
<Dependency>dbus-devel</Dependency>
|
||||
<Dependency>gperf</Dependency>
|
||||
<Dependency>jack-audio-connection-kit-devel</Dependency>
|
||||
<Dependency>libavc1394-devel</Dependency>
|
||||
<Dependency>libgnome-keyring-devel</Dependency>
|
||||
<Dependency>speech-dispatcher-devel</Dependency>
|
||||
<Dependency>gdk-pixbuf-devel</Dependency>
|
||||
<Dependency>glib2-devel</Dependency>
|
||||
<Dependency>glibc-devel</Dependency>
|
||||
<Dependency>gperf</Dependency>
|
||||
<Dependency>gsm-devel</Dependency>
|
||||
<!--Dependency>gtk2-devel</Dependency-->
|
||||
<Dependency>gtk3-devel</Dependency>
|
||||
<Dependency>harfbuzz-devel</Dependency>
|
||||
<Dependency>hunspell-devel</Dependency>
|
||||
<!--Dependency>icu4c-devel</Dependency-->
|
||||
<Dependency>icon-theme-hicolor</Dependency>
|
||||
<Dependency>imlib2-devel</Dependency>
|
||||
<Dependency>jack-audio-connection-kit-devel</Dependency>
|
||||
<Dependency>lame-devel</Dependency>
|
||||
<Dependency>libdc1394-devel</Dependency>
|
||||
<Dependency>libdrm-devel</Dependency>
|
||||
<!--Dependency>libevent-devel</Dependency-->
|
||||
<Dependency>libexif-devel</Dependency>
|
||||
<Dependency>libjpeg-turbo-devel</Dependency>
|
||||
<Dependency>libmtp-devel</Dependency>
|
||||
<Dependency>libogg-devel</Dependency>
|
||||
<Dependency>libopus-devel</Dependency>
|
||||
<Dependency>libsecret-devel</Dependency>
|
||||
<Dependency>libtheora-devel</Dependency>
|
||||
<Dependency>libvdpau-devel</Dependency>
|
||||
<Dependency>libvorbis-devel</Dependency>
|
||||
<!--Dependency>libvpx-devel</Dependency-->
|
||||
<Dependency>libXScrnSaver-devel</Dependency>
|
||||
<Dependency>libXcomposite-devel</Dependency>
|
||||
<Dependency>libXcursor-devel</Dependency>
|
||||
<Dependency>libXdamage-devel</Dependency>
|
||||
@@ -62,44 +46,54 @@
|
||||
<Dependency>libXi-devel</Dependency>
|
||||
<Dependency>libXrandr-devel</Dependency>
|
||||
<Dependency>libXrender-devel</Dependency>
|
||||
<Dependency>libXScrnSaver-devel</Dependency>
|
||||
<Dependency>libXtst-devel</Dependency>
|
||||
<Dependency>libavc1394-devel</Dependency>
|
||||
<Dependency>libdc1394-devel</Dependency>
|
||||
<Dependency>libdrm-devel</Dependency>
|
||||
<Dependency>libexif-devel</Dependency>
|
||||
<Dependency>libffi-devel</Dependency>
|
||||
<Dependency>libgnome-keyring</Dependency>
|
||||
<Dependency>libjpeg-turbo-devel</Dependency>
|
||||
<Dependency>libmtp-devel</Dependency>
|
||||
<Dependency>libogg-devel</Dependency>
|
||||
<Dependency>libopus-devel</Dependency>
|
||||
<Dependency>libsecret-devel</Dependency>
|
||||
<Dependency>libtheora-devel</Dependency>
|
||||
<Dependency>libvdpau-devel</Dependency>
|
||||
<Dependency>libvorbis-devel</Dependency>
|
||||
<Dependency>libxcb-devel</Dependency>
|
||||
<Dependency>libxslt-devel</Dependency>
|
||||
<Dependency>llvm-clang-devel</Dependency>
|
||||
<Dependency>minizip-devel</Dependency>
|
||||
<Dependency>mit-kerberos</Dependency>
|
||||
<Dependency>ninja</Dependency>
|
||||
<Dependency>nodejs</Dependency>
|
||||
<Dependency>nss-devel</Dependency>
|
||||
<Dependency>opencore-amr-devel</Dependency>
|
||||
<Dependency>pango-devel</Dependency>
|
||||
<Dependency>pciutils-devel</Dependency>
|
||||
<Dependency>pulseaudio-libs-devel</Dependency>
|
||||
<Dependency>python-lxml</Dependency>
|
||||
<Dependency>schroedinger-devel</Dependency>
|
||||
<Dependency>snappy-devel</Dependency>
|
||||
<Dependency>libxcb-devel</Dependency>
|
||||
<Dependency>speech-dispatcher-devel</Dependency>
|
||||
<Dependency>speex-devel</Dependency>
|
||||
<Dependency>libxslt-devel</Dependency>
|
||||
<Dependency>usbutils</Dependency>
|
||||
<Dependency>valgrind</Dependency>
|
||||
<Dependency>webp-devel</Dependency>
|
||||
<Dependency>x264-devel</Dependency>
|
||||
<Dependency>xdg-utils</Dependency>
|
||||
<Dependency>xvid-devel</Dependency>
|
||||
<Dependency>ninja</Dependency>
|
||||
<Dependency>libffi-devel</Dependency>
|
||||
<Dependency>yasm-devel</Dependency>
|
||||
<Dependency>usbutils</Dependency>
|
||||
<Dependency>nodejs</Dependency>
|
||||
<Dependency>glibc-devel</Dependency>
|
||||
<Dependency>glib2-devel</Dependency>
|
||||
<Dependency>icon-theme-hicolor</Dependency>
|
||||
<Dependency>llvm-clang-devel</Dependency>
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
<Patch level="1">chromium-widevine.patch</Patch>
|
||||
<Patch level="1">breakpad-use-ucontext_t.patch</Patch>
|
||||
<Patch level="1">chromium-gn-bootstrap-r17.patch</Patch>
|
||||
<!-- <Patch level="1">chromium-blink-gcc7-r2.patch</Patch> -->
|
||||
<!-- <Patch level="1">chromium-widevine-r1.patch</Patch> -->
|
||||
<!--Patch level="1">pisilinux/gfx_jpeg_codec.patch</Patch-->
|
||||
<!--Patch level="1">pisilinux/fix_build_with_newer_gcc.patch</Patch-->
|
||||
<Patch level="1">pisilinux/last_commit_position.patch</Patch>
|
||||
<Patch level="1">chromium-compiler-r4.patch</Patch>
|
||||
<Patch level="1">chromium-69-gcc7.patch</Patch>
|
||||
<Patch level="1">marcos.patch</Patch>
|
||||
<Patch level="1">chromium-skia-harmony.patch</Patch>
|
||||
<Patch level="1">chromium-widevine-r2.patch</Patch>
|
||||
<Patch level="1">fix-cfi-icall-failure-with-use_system_libjpeg-true.patch</Patch>
|
||||
<Patch level="1">only-disable-cfi-icall-when-use_system_libjpeg-true.patch</Patch>
|
||||
</Patches>
|
||||
</Source>
|
||||
<Package>
|
||||
@@ -169,6 +163,13 @@
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="13">
|
||||
<Date>2018-09-11</Date>
|
||||
<Version>69.0.3497.81</Version>
|
||||
<Comment>Version Bump.</Comment>
|
||||
<Name>Kamil Atlı</Name>
|
||||
<Email>suvari@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="12">
|
||||
<Date>2018-04-09</Date>
|
||||
<Version>62.0.3202.97</Version>
|
||||
|
||||
Reference in New Issue
Block a user