chromium-brovser:ver.bump

This commit is contained in:
Rmys
2018-09-20 21:29:50 +03:00
parent 85a11243ec
commit 4ff83056b0
26 changed files with 982 additions and 1029 deletions
+1 -3
View File
@@ -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
View File
@@ -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_
@@ -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
View File
@@ -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>
@@ -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__)
+45 -44
View File
@@ -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>