Blind import of Debian patches version 47.0.2526.73

Blind import of Inox patchset as of commit 3280f7c2026faeab47f9ad3ced6485005e914012
This commit is contained in:
Eloston
2015-12-04 20:15:10 -08:00
parent 27f62c91a1
commit f3458f5f60
26 changed files with 950 additions and 61 deletions

View File

@@ -0,0 +1,13 @@
description: set chromedriver version as undefined
--- a/chrome/test/chromedriver/embed_version_in_cpp.py
+++ b/chrome/test/chromedriver/embed_version_in_cpp.py
@@ -26,7 +26,7 @@ def main():
options, _ = parser.parse_args()
version = open(options.version_file, 'r').read().strip()
- revision = lastchange.FetchVersionInfo(None).revision
+ revision = "undefined"
if revision:
match = re.match('([0-9a-fA-F]+)(-refs/heads/master@{#(\d+)})?', revision)

View File

@@ -0,0 +1,13 @@
description: never show the default browser question
--- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
+++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
@@ -819,7 +819,7 @@ void StartupBrowserCreatorImpl::AddInfoB
browser->tab_strip_model()->GetActiveWebContents()));
#if !defined(OS_CHROMEOS)
- if (!command_line_.HasSwitch(switches::kNoDefaultBrowserCheck)) {
+ if (false) {
// Generally, the default browser prompt should not be shown on first
// run. However, when the set-as-default dialog has been suppressed, we
// need to allow it.

View File

@@ -0,0 +1,12 @@
--- a/chrome/browser/extensions/external_component_loader.cc
+++ b/chrome/browser/extensions/external_component_loader.cc
@@ -35,6 +35,9 @@ ExternalComponentLoader::~ExternalCompon
void ExternalComponentLoader::StartLoading() {
prefs_.reset(new base::DictionaryValue());
+ LoadFinished();
+ return;
+
AddExternalExtension(extension_misc::kInAppPaymentsSupportAppId);
if (HotwordServiceFactory::IsHotwordAllowed(profile_))

View File

@@ -0,0 +1,13 @@
description: disable the google api key warning when those aren't found
--- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
+++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
@@ -815,8 +815,6 @@ void StartupBrowserCreatorImpl::AddInfoB
if (is_process_startup == chrome::startup::IS_PROCESS_STARTUP &&
!command_line_.HasSwitch(switches::kTestType)) {
chrome::ShowBadFlagsPrompt(browser);
- GoogleApiKeysInfoBarDelegate::Create(InfoBarService::FromWebContents(
- browser->tab_strip_model()->GetActiveWebContents()));
ObsoleteSystemInfoBarDelegate::Create(InfoBarService::FromWebContents(
browser->tab_strip_model()->GetActiveWebContents()));

View File

@@ -0,0 +1,15 @@
author: Michael Gilbert <mgilbert@debian.org>
description: disable the ad promo system by default
bug-debian: http://bugs.debian.org/634101
--- a/chrome/browser/ui/app_list/app_list_service.cc
+++ b/chrome/browser/ui/app_list/app_list_service.cc
@@ -153,7 +153,7 @@ void AppListService::RegisterPrefs(PrefR
// Identifies whether we should show the app launcher promo or not. This
// becomes false when the user dismisses the promo.
- registry->RegisterBooleanPref(prefs::kShowAppLauncherPromo, true);
+ registry->RegisterBooleanPref(prefs::kShowAppLauncherPromo, false);
}
// static

View File

@@ -0,0 +1,14 @@
description: disable third-party cookies by default
author: Chad Miller <chad.miller@canonical.com>
--- a/components/content_settings/core/browser/cookie_settings.cc
+++ b/components/content_settings/core/browser/cookie_settings.cc
@@ -82,7 +82,7 @@ void CookieSettings::GetCookieSettings(
void CookieSettings::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(
- prefs::kBlockThirdPartyCookies, false,
+ prefs::kBlockThirdPartyCookies, true,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
}

View File

@@ -0,0 +1,15 @@
description: 10 seconds may not be enough, so don't kill the gpu process until 20.
author: Chad MILLER <chad.miller@canonical.com>
bug-debian: http://bugs.debian.org/781940
--- a/content/gpu/gpu_main.cc
+++ b/content/gpu/gpu_main.cc
@@ -78,7 +78,7 @@
#if defined(CYGPROFILE_INSTRUMENTATION)
const int kGpuTimeout = 30000;
#else
-const int kGpuTimeout = 10000;
+const int kGpuTimeout = 20000;
#endif
namespace content {

View File

@@ -0,0 +1,53 @@
Description: manpage updates/fixes
Forwarded: http://code.google.com/p/chromium/issues/detail?id=73591
Author: Daniel Echeverry <epsilon77@gmail.com>
--- a/chrome/app/resources/manpage.1.in
+++ b/chrome/app/resources/manpage.1.in
@@ -1,5 +1,5 @@
-." This file is processed by chrome.gyp to generate manpages in the
-." build diretory.
+.\" This file is processed by chrome.gyp to generate manpages in the
+.\" build diretory.
.TH @@FILENAME@@ 1 "" "" "USER COMMANDS"
.SH NAME
@@ -20,6 +20,19 @@ This manpage only describes invocation,
@@NAME@@ has hundreds of undocumented command-line flags that are added
and removed at the whim of the developers. Here, we document relatively
stable flags.
+
+.TP
+\fB\-h \fRor\fB \-\-help\fR
+Show help output.
+
+.TP
+\fB\-g \fRor\fB \-\-debug\fR
+Start a debugging session within /usr/bin/gdb.
+
+.TP
+\fB\-\-temp-profile\fR
+Use a throw-away/temporary profile for this session.
+
.TP
\fB\-\-user\-data\-dir\fR=\fIDIR\fR
Specifies the directory that user data (your "profile") is kept in.
@@ -110,6 +123,7 @@ as
See the GTK documentation for more:
.IP
<http://library.gnome.org/devel/gtk/stable/gtk-running.html>
+.IP
<http://library.gnome.org/devel/gtk/stable/gtk-x11.html>
.SH ENVIRONMENT
--- a/chrome/chrome_exe.gypi
+++ b/chrome/chrome_exe.gypi
@@ -128,7 +128,7 @@
}, { # else branding!="Chrome"
'variables': {
'name': 'Chromium',
- 'filename': 'chromium-browser',
+ 'filename': 'chromium',
'confdir': 'chromium',
},
}],

View File

@@ -0,0 +1,17 @@
description: search for master_preferences in /usr/share/chromium
--- a/chrome/browser/first_run/first_run_internal_linux.cc
+++ b/chrome/browser/first_run/first_run_internal_linux.cc
@@ -18,11 +18,7 @@ bool IsOrganicFirstRun() {
}
base::FilePath MasterPrefsPath() {
- // The standard location of the master prefs is next to the chrome binary.
- base::FilePath master_prefs;
- if (!PathService::Get(base::DIR_EXE, &master_prefs))
- return base::FilePath();
- return master_prefs.AppendASCII(installer::kDefaultMasterPrefs);
+ return base::FilePath("/usr/share/chromium");
}
} // namespace internal

View File

@@ -0,0 +1,13 @@
description: add ps printing capability
author: Salvatore Bonaccorso
--- a/chrome/browser/ui/libgtk2ui/print_dialog_gtk2.cc
+++ b/chrome/browser/ui/libgtk2ui/print_dialog_gtk2.cc
@@ -342,6 +342,7 @@ void PrintDialogGtk2::ShowDialog(
// Since we only generate PDF, only show printers that support PDF.
// TODO(thestig) Add more capabilities to support?
GtkPrintCapabilities cap = static_cast<GtkPrintCapabilities>(
+ GTK_PRINT_CAPABILITY_GENERATE_PS |
GTK_PRINT_CAPABILITY_GENERATE_PDF |
GTK_PRINT_CAPABILITY_PAGE_SET |
GTK_PRINT_CAPABILITY_COPIES |

View File

@@ -0,0 +1,16 @@
description: use system clang compilers
author: Michael Gilbert <mgilbert@debian.org>
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -5954,8 +5954,8 @@
['clang==1 and ((OS!="mac" and OS!="ios") or clang_xcode==0) '
'and OS!="win"', {
'make_global_settings': [
- ['CC', '<(make_clang_dir)/bin/clang'],
- ['CXX', '<(make_clang_dir)/bin/clang++'],
+ ['CC', '/usr/bin/clang'],
+ ['CXX', '/usr/bin/clang++'],
['CC.host', '$(CC)'],
['CXX.host', '$(CXX)'],
],

View File

@@ -0,0 +1,197 @@
Description: Don't change the FFmpeg ABI in chromium ...
... because it breaks ABI compatibility with the system FFmpeg.
And don't use private API, which can change at any time.
Author: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Last-Update: <2015-07-26>
--- a/media/ffmpeg/ffmpeg_common.h
+++ b/media/ffmpeg/ffmpeg_common.h
@@ -19,20 +19,12 @@
// 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 the ffmpeg.gyp
-// file or the headers below will generate different structures.
-#define FF_API_PIX_FMT_DESC 0
-#define FF_API_OLD_DECODE_AUDIO 0
-#define FF_API_DESTRUCT_PACKET 0
-#define FF_API_GET_BUFFER 0
// Temporarily disable possible loss of data warning.
// TODO(scherkus): fix and upstream the compiler warnings.
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
+++ b/media/filters/ffmpeg_demuxer.cc
@@ -1013,24 +1013,6 @@ void FFmpegDemuxer::OnFindStreamInfoDone
// 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>(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>(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;
- }
- }
AVStream* audio_stream = NULL;
AudioDecoderConfig audio_config;
--- a/build/all.gyp
+++ b/build/all.gyp
@@ -135,7 +135,7 @@
'../third_party/WebKit/public/all.gyp:*',
'../third_party/cacheinvalidation/cacheinvalidation.gyp:*',
'../third_party/codesighs/codesighs.gyp:*',
- '../third_party/ffmpeg/ffmpeg.gyp:*',
+ '../build/linux/unbundle/ffmpeg.gyp:*',
'../third_party/iccjpeg/iccjpeg.gyp:*',
'../third_party/libpng/libpng.gyp:*',
'../third_party/libusb/libusb.gyp:*',
--- a/media/cast/cast_testing.gypi
+++ b/media/cast/cast_testing.gypi
@@ -15,7 +15,7 @@
'cast_net',
'cast_receiver',
'<(DEPTH)/testing/gtest.gyp:gtest',
- '<(DEPTH)/third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '<(DEPTH)/build/linux/unbundle/ffmpeg.gyp:ffmpeg',
'<(DEPTH)/third_party/libyuv/libyuv.gyp:libyuv',
'<(DEPTH)/third_party/mt19937ar/mt19937ar.gyp:mt19937ar',
'<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
@@ -223,7 +223,7 @@
'<(DEPTH)/net/net.gyp:net_test_support',
'<(DEPTH)/media/media.gyp:media',
'<(DEPTH)/testing/gtest.gyp:gtest',
- '<(DEPTH)/third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '<(DEPTH)/build/linux/unbundle/ffmpeg.gyp:ffmpeg',
'<(DEPTH)/third_party/opus/opus.gyp:opus',
'<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
],
@@ -246,7 +246,7 @@
'<(DEPTH)/net/net.gyp:net_test_support',
'<(DEPTH)/media/media.gyp:media',
'<(DEPTH)/testing/gtest.gyp:gtest',
- '<(DEPTH)/third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '<(DEPTH)/build/linux/unbundle/ffmpeg.gyp:ffmpeg',
'<(DEPTH)/third_party/opus/opus.gyp:opus',
'<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
],
@@ -359,7 +359,7 @@
'<(DEPTH)/base/base.gyp:test_support_base',
'<(DEPTH)/testing/gmock.gyp:gmock',
'<(DEPTH)/testing/gtest.gyp:gtest',
- '<(DEPTH)/third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '<(DEPTH)/build/linux/unbundle/ffmpeg.gyp:ffmpeg',
],
'sources': [
'sender/h264_vt_encoder_unittest.cc',
--- a/media/media.gyp
+++ b/media/media.gyp
@@ -642,7 +642,7 @@
}],
['media_use_ffmpeg==1', {
'dependencies': [
- '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '../build/linux/unbundle/ffmpeg.gyp:ffmpeg',
],
}, { # media_use_ffmpeg==0
# Exclude the sources that depend on ffmpeg.
@@ -1330,7 +1330,7 @@
}],
['media_use_ffmpeg==1', {
'dependencies': [
- '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '../build/linux/unbundle/ffmpeg.gyp:ffmpeg',
],
}, { # media_use_ffmpeg==0
'sources!': [
@@ -1471,7 +1471,7 @@
}],
['media_use_ffmpeg==1', {
'dependencies': [
- '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '../build/linux/unbundle/ffmpeg.gyp:ffmpeg',
],
}, { # media_use_ffmpeg==0
'sources!': [
@@ -1940,7 +1940,7 @@
'../base/base.gyp:test_support_base',
'../testing/gmock.gyp:gmock',
'../testing/gtest.gyp:gtest',
- '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '../build/linux/unbundle/ffmpeg.gyp:ffmpeg',
'../ui/gfx/gfx.gyp:gfx_geometry',
'media',
'media_test_support',
--- a/media/media_cdm.gypi
+++ b/media/media_cdm.gypi
@@ -38,7 +38,7 @@
['media_use_ffmpeg == 1' , {
'defines': ['CLEAR_KEY_CDM_USE_FFMPEG_DECODER'],
'dependencies': [
- '<(DEPTH)/third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '<(DEPTH)/build/linux/unbundle/ffmpeg.gyp:ffmpeg',
],
'sources': [
'cdm/ppapi/external_clear_key/ffmpeg_cdm_audio_decoder.cc',
--- a/third_party/WebKit/Source/core/core.gyp
+++ b/third_party/WebKit/Source/core/core.gyp
@@ -383,7 +383,7 @@
],
},
'dependencies': [
- '<(DEPTH)/third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '<(DEPTH)/build/linux/unbundle/ffmpeg.gyp:ffmpeg',
],
}],
['"WTF_USE_WEBAUDIO_OPENMAX_DL_FFT=1" in feature_defines', {
@@ -399,7 +399,7 @@
# Windows shared builder needs extra help for linkage
['OS=="win" and "WTF_USE_WEBAUDIO_FFMPEG=1" in feature_defines', {
'export_dependent_settings': [
- '<(DEPTH)/third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '<(DEPTH)/build/linux/unbundle/ffmpeg.gyp:ffmpeg',
],
}],
],
--- a/third_party/WebKit/Source/platform/blink_platform.gyp
+++ b/third_party/WebKit/Source/platform/blink_platform.gyp
@@ -409,7 +409,7 @@
'<(DEPTH)/third_party/ffmpeg',
],
'dependencies': [
- '<(DEPTH)/third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '<(DEPTH)/build/linux/unbundle/ffmpeg.gyp:ffmpeg',
],
}],
['"WTF_USE_WEBAUDIO_OPENMAX_DL_FFT=1" in feature_defines', {
--- a/content/content_tests.gypi
+++ b/content/content_tests.gypi
@@ -1619,7 +1619,7 @@
}, {
'dependencies': [
# Runtime dependencis.
- '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
+ '../build/linux/unbundle/ffmpeg.gyp:ffmpeg',
'../third_party/mesa/mesa.gyp:osmesa',
],
}],

View File

@@ -0,0 +1,36 @@
Include system copy of prtime.h
--- a/base/base.gypi
+++ b/base/base.gypi
@@ -622,8 +622,6 @@
'third_party/dmg_fp/g_fmt.cc',
'third_party/icu/icu_utf.cc',
'third_party/icu/icu_utf.h',
- 'third_party/nspr/prtime.cc',
- 'third_party/nspr/prtime.h',
'third_party/superfasthash/superfasthash.c',
'third_party/xdg_mime/xdgmime.h',
'thread_task_runner_handle.cc',
--- a/base/time/pr_time_unittest.cc
+++ b/base/time/pr_time_unittest.cc
@@ -6,7 +6,7 @@
#include <time.h>
#include "base/compiler_specific.h"
-#include "base/third_party/nspr/prtime.h"
+#include <nspr/prtime.h>
#include "base/time/time.h"
#include "testing/gtest/include/gtest/gtest.h"
--- a/base/time/time.cc
+++ b/base/time/time.cc
@@ -13,7 +13,8 @@
#include "base/lazy_instance.h"
#include "base/logging.h"
#include "base/strings/stringprintf.h"
-#include "base/third_party/nspr/prtime.h"
+
+#include <nspr/prtime.h>
namespace base {

View File

@@ -0,0 +1,64 @@
--- a/third_party/leveldatabase/leveldatabase.gyp
+++ b/third_party/leveldatabase/leveldatabase.gyp
@@ -56,7 +56,7 @@
'conditions': [
['use_snappy', {
'dependencies': [
- '../../third_party/snappy/snappy.gyp:snappy',
+ '../../build/linux/unbundle/snappy.gyp:snappy',
],
}],
],
--- a/third_party/WebKit/Source/core/core.gyp
+++ b/third_party/WebKit/Source/core/core.gyp
@@ -187,7 +187,7 @@
'<(DEPTH)/third_party/libxslt/libxslt.gyp:libxslt',
'<(DEPTH)/third_party/npapi/npapi.gyp:npapi',
'<(DEPTH)/third_party/qcms/qcms.gyp:qcms',
- '<(DEPTH)/third_party/snappy/snappy.gyp:snappy',
+ '<(DEPTH)/build/linux/unbundle/snappy.gyp:snappy',
'<(DEPTH)/third_party/sqlite/sqlite.gyp:sqlite',
'<(DEPTH)/url/url.gyp:url_lib',
'<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
@@ -703,7 +703,7 @@
'<(DEPTH)/third_party/libxslt/libxslt.gyp:libxslt',
'<(DEPTH)/third_party/npapi/npapi.gyp:npapi',
'<(DEPTH)/third_party/qcms/qcms.gyp:qcms',
- '<(DEPTH)/third_party/snappy/snappy.gyp:snappy',
+ '<(DEPTH)/build/linux/unbundle/snappy.gyp:snappy',
'<(DEPTH)/third_party/sqlite/sqlite.gyp:sqlite',
'<(DEPTH)/url/url.gyp:url_lib',
'<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
--- a/build/linux/unbundle/snappy.gyp
+++ b/build/linux/unbundle/snappy.gyp
@@ -17,7 +17,7 @@
],
},
'includes': [
- '../../build/shim_headers.gypi',
+ '../../shim_headers.gypi',
],
'link_settings': {
'libraries': [
--- a/third_party/leveldatabase/port/port_chromium.cc
+++ b/third_party/leveldatabase/port/port_chromium.cc
@@ -8,7 +8,7 @@
#include "util/logging.h"
#if defined(USE_SNAPPY)
-# include "third_party/snappy/src/snappy.h"
+# include <snappy.h>
#endif
namespace leveldb {
--- a/third_party/WebKit/Source/bindings/core/v8/V8ScriptRunner.cpp
+++ b/third_party/WebKit/Source/bindings/core/v8/V8ScriptRunner.cpp
@@ -38,7 +38,7 @@
#include "platform/ScriptForbiddenScope.h"
#include "platform/TraceEvent.h"
#include "public/platform/Platform.h"
-#include "third_party/snappy/src/snappy.h"
+#include <snappy.h>
#include "wtf/CurrentTime.h"
#if defined(WTF_OS_WIN)

View File

@@ -0,0 +1,259 @@
description: enable VA-API hardware acceleration
origin: http://codereview.chromium.org/15955009/diff/92001/content/common/sandbox_linux/bpf_gpu_policy_linux.cc.
bug-debian: http://bugs.debian.org/793815
--- a/content/common/gpu/media/gpu_video_decode_accelerator.cc
+++ b/content/common/gpu/media/gpu_video_decode_accelerator.cc
@@ -33,7 +33,7 @@
#include "content/common/gpu/media/dxva_video_decode_accelerator.h"
#elif defined(OS_MACOSX)
#include "content/common/gpu/media/vt_video_decode_accelerator.h"
-#elif defined(OS_CHROMEOS)
+#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
#if defined(USE_V4L2_CODEC)
#include "content/common/gpu/media/v4l2_device.h"
#include "content/common/gpu/media/v4l2_slice_video_decode_accelerator.h"
@@ -347,7 +347,7 @@ void GpuVideoDecodeAccelerator::BindImag
scoped_ptr<media::VideoDecodeAccelerator>
GpuVideoDecodeAccelerator::CreateVaapiVDA() {
scoped_ptr<media::VideoDecodeAccelerator> decoder;
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
decoder.reset(new VaapiVideoDecodeAccelerator(
make_context_current_, base::Bind(&GpuVideoDecodeAccelerator::BindImage,
base::Unretained(this))));
--- a/content/content_common.gypi
+++ b/content/content_common.gypi
@@ -862,7 +862,7 @@
},
],
}],
- ['chromeos==1', {
+ ['chromeos==1 or desktop_linux==1', {
'sources': [
'common/gpu/media/accelerated_video_decoder.h',
'common/gpu/media/h264_decoder.cc',
@@ -918,7 +918,7 @@
'common/gpu/media/tegra_v4l2_device.h',
],
}],
- ['target_arch != "arm" and chromeos == 1', {
+ ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1)', {
'dependencies': [
'../media/media.gyp:media',
'../third_party/libyuv/libyuv.gyp:libyuv',
--- a/content/content_gpu.gypi
+++ b/content/content_gpu.gypi
@@ -36,7 +36,7 @@
],
},
}],
- ['target_arch!="arm" and chromeos == 1', {
+ ['target_arch!="arm" and (chromeos == 1 or desktop_linux == 1)', {
'include_dirs': [
'<(DEPTH)/third_party/libva',
],
--- a/content/content_tests.gypi
+++ b/content/content_tests.gypi
@@ -1743,7 +1743,7 @@
},
]
}],
- ['chromeos==1 and target_arch != "arm"', {
+ ['(chromeos==1 or desktop_linux==1) and target_arch != "arm"', {
'targets': [
{
'target_name': 'vaapi_jpeg_decoder_unittest',
--- a/content/public/common/content_switches.cc
+++ b/content/public/common/content_switches.cc
@@ -905,7 +905,7 @@ const char kEnableAggressiveDOMStorageFl
// Disable web audio API.
const char kDisableWebAudio[] = "disable-webaudio";
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
// Disables panel fitting (used for mirror mode).
const char kDisablePanelFitting[] = "disable-panel-fitting";
--- a/content/public/common/content_switches.h
+++ b/content/public/common/content_switches.h
@@ -267,7 +267,7 @@ CONTENT_EXPORT extern const char kRender
CONTENT_EXPORT extern const char kDisableWebAudio[];
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
CONTENT_EXPORT extern const char kDisablePanelFitting[];
CONTENT_EXPORT extern const char kDisableVaapiAcceleratedVideoEncode[];
#endif
--- a/media/media.gyp
+++ b/media/media.gyp
@@ -761,7 +761,7 @@
],
}],
# For VaapiVideoEncodeAccelerator.
- ['target_arch != "arm" and chromeos == 1', {
+ ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1)', {
'sources': [
'filters/h264_bitstream_buffer.cc',
'filters/h264_bitstream_buffer.h',
--- a/gpu/config/software_rendering_list_json.cc
+++ b/gpu/config/software_rendering_list_json.cc
@@ -481,17 +481,6 @@ const char kSoftwareRenderingListJson[]
]
},
{
- "id": 48,
- "description": "Accelerated video decode is unavailable on Linux",
- "cr_bugs": [137247],
- "os": {
- "type": "linux"
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
"id": 49,
"description": "NVidia GeForce GT 650M can cause the system to hang with flash 3D",
"cr_bugs": [140175],
@@ -1039,6 +1028,11 @@ LONG_STRING_CONST(
"op": ">=",
"value": "3.0"
}
+ },
+ {
+ "os": {
+ "type": "linux"
+ }
}
],
"features": [
--- a/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
+++ b/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
@@ -21,6 +21,8 @@
#include "base/logging.h"
#include "base/memory/scoped_ptr.h"
#include "build/build_config.h"
+// Auto-generated for dlopen libva libraries
+#include "content/common/gpu/media/va_stubs.h"
#include "content/common/sandbox_linux/sandbox_bpf_base_policy_linux.h"
#include "content/common/sandbox_linux/sandbox_seccomp_bpf_linux.h"
#include "content/common/set_process_title.h"
@@ -32,6 +34,9 @@
#include "sandbox/linux/syscall_broker/broker_process.h"
#include "sandbox/linux/system_headers/linux_syscalls.h"
+#include <va/va.h>
+#include <va/va_x11.h>
+
using sandbox::arch_seccomp_data;
using sandbox::bpf_dsl::Allow;
using sandbox::bpf_dsl::ResultExpr;
@@ -40,6 +45,11 @@ using sandbox::syscall_broker::BrokerFil
using sandbox::syscall_broker::BrokerProcess;
using sandbox::SyscallSets;
+using content_common_gpu_media::kModuleVa;
+using content_common_gpu_media::kModuleVa_x11;
+using content_common_gpu_media::InitializeStubs;
+using content_common_gpu_media::StubPathMap;
+
namespace content {
namespace {
@@ -94,7 +104,7 @@ inline bool UseLibV4L2() {
bool IsAcceleratedVaapiVideoEncodeEnabled() {
bool accelerated_encode_enabled = false;
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
const base::CommandLine& command_line =
*base::CommandLine::ForCurrentProcess();
accelerated_encode_enabled =
@@ -299,25 +309,27 @@ bool GpuProcessPolicy::PreSandboxHook()
// inside the sandbox, so preload them now.
if (IsAcceleratedVaapiVideoEncodeEnabled() ||
IsAcceleratedVideoDecodeEnabled()) {
- const char* I965DrvVideoPath = NULL;
- const char* I965HybridDrvVideoPath = NULL;
+ VLOG(1) << "Attempting hardware accelerated video.";
+ StubPathMap paths;
+ paths[kModuleVa].push_back("libva.so.1");
+ paths[kModuleVa].push_back("libva-x11.so.1");
+ if (!InitializeStubs(paths)) {
+ VLOG(1) << "Failed to initialize stubs.";
+ return false;
+ }
- if (IsArchitectureX86_64()) {
- I965DrvVideoPath = "/usr/lib64/va/drivers/i965_drv_video.so";
- I965HybridDrvVideoPath = "/usr/lib64/va/drivers/hybrid_drv_video.so";
- } else if (IsArchitectureI386()) {
- I965DrvVideoPath = "/usr/lib/va/drivers/i965_drv_video.so";
+ Display* x_display = XOpenDisplay(NULL);
+ VADisplay va_display = vaGetDisplay(x_display);
+ if (!vaDisplayIsValid(va_display)) {
+ VLOG(1) << "Failed in vaGetDisplay().";
+ return false;
}
- dlopen(I965DrvVideoPath, RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
- if (I965HybridDrvVideoPath)
- dlopen(I965HybridDrvVideoPath, RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
- dlopen("libva.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
-#if defined(USE_OZONE)
- dlopen("libva-drm.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
-#elif defined(USE_X11)
- dlopen("libva-x11.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
-#endif
+ int major_version, minor_version;
+ if (vaInitialize(va_display, &major_version, &minor_version) != VA_STATUS_SUCCESS) {
+ VLOG(1) << "Failed in vaInitialize().";
+ return false;
+ }
}
}
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -1003,7 +1003,7 @@ const Experiment kExperiments[] = {
"disable-accelerated-video-decode",
IDS_FLAGS_DISABLE_ACCELERATED_VIDEO_DECODE_NAME,
IDS_FLAGS_DISABLE_ACCELERATED_VIDEO_DECODE_DESCRIPTION,
- kOsMac | kOsWin | kOsCrOS,
+ kOsAll,
SINGLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
},
#if defined(USE_ASH)
--- a/content/common/gpu/media/vaapi_wrapper.cc
+++ b/content/common/gpu/media/vaapi_wrapper.cc
@@ -147,7 +147,7 @@ scoped_ptr<VaapiWrapper> VaapiWrapper::C
VAProfile va_profile,
const base::Closure& report_error_to_uma_cb) {
if (!profile_infos_.Get().IsProfileSupported(mode, va_profile)) {
- DVLOG(1) << "Unsupported va_profile: " << va_profile;
+ VLOG(1) << "Unsupported va_profile: " << va_profile;
return nullptr;
}
@@ -385,7 +385,7 @@ bool VaapiWrapper::IsEntrypointSupported
if (std::find(supported_entrypoints.begin(),
supported_entrypoints.end(),
entrypoint) == supported_entrypoints.end()) {
- DVLOG(1) << "Unsupported entrypoint";
+ VLOG(1) << "Unsupported entrypoint";
return false;
}
return true;
@@ -409,8 +409,8 @@ bool VaapiWrapper::AreAttribsSupported_L
if (attribs[i].type != required_attribs[i].type ||
(attribs[i].value & required_attribs[i].value) !=
required_attribs[i].value) {
- DVLOG(1) << "Unsupported value " << required_attribs[i].value
- << " for attribute type " << required_attribs[i].type;
+ VLOG(1) << "Unsupported value " << required_attribs[i].value
+ << " for attribute type " << required_attribs[i].type;
return false;
}
}

View File

@@ -0,0 +1,10 @@
--- a/chrome/test/data/webui_test_resources.grd
+++ b/chrome/test/data/webui_test_resources.grd
@@ -8,7 +8,6 @@
</outputs>
<release seq="1">
<includes>
- <include name="IDR_WEBUI_TEST_I18N_PROCESS_CSS_TEST" file="webui/i18n_process_css_test.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" />
</includes>
</release>
</grit>

View File

@@ -97,29 +97,4 @@
Chromium Helper
--- ./chrome/browser/ui/toolbar/wrench_menu_model.cc
+++ ./chrome/browser/ui/toolbar/wrench_menu_model.cc.new
@@ -930,21 +930,7 @@
CreateCutCopyPasteMenu();
AddItemWithStringId(IDC_OPTIONS, IDS_SETTINGS);
-#if !defined(OS_CHROMEOS)
- if (!switches::IsNewAvatarMenu()) {
- // No "Sign in to Chromium..." menu item on ChromeOS.
- SigninManager* signin = SigninManagerFactory::GetForProfile(
- browser_->profile()->GetOriginalProfile());
- if (signin && signin->IsSigninAllowed() &&
- signin_ui_util::GetSignedInServiceErrors(
- browser_->profile()->GetOriginalProfile()).empty()) {
- AddItem(IDC_SHOW_SYNC_SETUP,
- l10n_util::GetStringFUTF16(
- IDS_SYNC_MENU_PRE_SYNCED_LABEL,
- l10n_util::GetStringUTF16(IDS_SHORT_PRODUCT_NAME)));
- }
- }
-#endif
+
// The help submenu is only displayed on official Chrome builds. As the
// 'About' item has been moved to this submenu, it's reinstated here for
// Chromium builds.

View File

@@ -0,0 +1,14 @@
--- a/sandbox/linux/sandbox_linux.gypi
+++ b/sandbox/linux/sandbox_linux.gypi
@@ -221,7 +221,10 @@
],
'cflags': [
# For ULLONG_MAX
- '-std=gnu99',
+ '-std=gnu99 -fPIE',
+ ],
+ 'ldflags': [
+ '-pie',
],
'include_dirs': [
'../..',

View File

@@ -1,6 +1,6 @@
--- ./components/autofill/core/browser/autofill_download_manager.cc
+++ ./components/autofill/core/browser/autofill_download_manager.cc.new
@@ -44,11 +44,6 @@
@@ -55,11 +55,6 @@
return std::string();
}
@@ -12,7 +12,7 @@
} // namespace
struct AutofillDownloadManager::FormRequestData {
@@ -167,33 +167,6 @@
@@ -188,35 +183,6 @@
bool AutofillDownloadManager::StartRequest(
const std::string& form_xml,
const FormRequestData& request_data) {
@@ -26,6 +26,8 @@
- net::URLFetcher* fetcher =
- net::URLFetcher::Create(fetcher_id_for_unittest_++, request_url,
- net::URLFetcher::POST, this).release();
- data_use_measurement::DataUseUserData::AttachToFetcher(
- fetcher, data_use_measurement::DataUseUserData::AUTOFILL);
- url_fetchers_[fetcher] = request_data;
- fetcher->SetAutomaticallyRetryOn5xx(false);
- fetcher->SetRequestContext(request_context);

View File

@@ -121,16 +121,19 @@
}
scoped_refptr<const Extension> ComponentLoader::CreateExtension(
@@ -496,9 +496,6 @@
@@ -553,11 +553,6 @@
}
#else // !defined(OS_CHROMEOS)
DCHECK(!skip_session_components);
Add(IDR_BOOKMARKS_MANIFEST,
base::FilePath(FILE_PATH_LITERAL("bookmark_manager")));
- Add(IDR_BOOKMARKS_MANIFEST,
- base::FilePath(FILE_PATH_LITERAL("bookmark_manager")));
- // Cloud Print component app. Not required on Chrome OS.
- Add(IDR_CLOUDPRINT_MANIFEST,
- base::FilePath(FILE_PATH_LITERAL("cloud_print")));
#endif
if (!skip_session_components) {
@@ -629,13 +571,6 @@
@@ -147,3 +150,16 @@
#if defined(ENABLE_SETTINGS_APP)
Add(IDR_SETTINGS_APP_MANIFEST,
base::FilePath(FILE_PATH_LITERAL("settings_app")));
--- ./chrome/browser/ui/toolbar/bookmark_sub_menu_model.cc
+++ ./chrome/browser/ui/toolbar/bookmark_sub_menu_model.cc.new
@@ -38,7 +38,6 @@
AddSeparator(ui::NORMAL_SEPARATOR);
}
AddCheckItemWithStringId(IDC_SHOW_BOOKMARK_BAR, IDS_SHOW_BOOKMARK_BAR);
- AddItemWithStringId(IDC_SHOW_BOOKMARK_MANAGER, IDS_BOOKMARK_MANAGER);
#if !defined(OS_CHROMEOS)
AddItemWithStringId(IDC_IMPORT_SETTINGS, IDS_IMPORT_SETTINGS_MENU_LABEL);
#endif

View File

@@ -0,0 +1,35 @@
--- ./chrome/browser/ui/startup/startup_browser_creator_impl.cc
+++ ./chrome/browser/ui/startup/startup_browser_creator_impl.cc.new
@@ -852,8 +852,6 @@
// Replace magic names for the actual urls.
if (it->host() == "new_tab_page") {
startup_urls->push_back(GURL(chrome::kChromeUINewTabURL));
- } else if (it->host() == "welcome_page") {
- startup_urls->push_back(internals::GetWelcomePageURL());
} else {
startup_urls->push_back(*it);
}
@@ -868,10 +866,6 @@
if (startup_urls->empty()) {
AddSpecialURLs(startup_urls);
startup_urls->push_back(GURL(chrome::kChromeUINewTabURL));
-
- // Special case the FIRST_RUN_LAST_TAB case of the welcome page.
- if (welcome_run_type_ == WelcomeRunType::FIRST_RUN_LAST_TAB)
- startup_urls->push_back(internals::GetWelcomePageURL());
}
if (signin::ShouldShowPromoAtStartup(profile_, is_first_run_)) {
@@ -905,10 +899,6 @@
void StartupBrowserCreatorImpl::AddSpecialURLs(
std::vector<GURL>* url_list) const {
- // Optionally include the welcome page.
- if (welcome_run_type_ == WelcomeRunType::FIRST_TAB)
- url_list->insert(url_list->begin(), internals::GetWelcomePageURL());
-
// If this Profile is marked for a reset prompt, ensure the reset
// settings dialog appears.
if (CheckAndClearProfileResetTrigger())

View File

@@ -1,6 +1,18 @@
--- ./components/google/core/browser/google_url_tracker.cc
+++ ./components/google/core/browser/google_url_tracker.cc.new
@@ -129,45 +129,5 @@
@@ -22,9 +22,9 @@
const char GoogleURLTracker::kDefaultGoogleHomepage[] =
- "https://www.google.com/";
+ "";
const char GoogleURLTracker::kSearchDomainCheckURL[] =
- "https://www.google.com/searchdomaincheck?format=domain&type=chrome";
+ "";
GoogleURLTracker::GoogleURLTracker(scoped_ptr<GoogleURLTrackerClient> client,
Mode mode)
@@ -143,48 +143,4 @@
}
void GoogleURLTracker::StartFetchIfDesirable() {
@@ -12,7 +24,7 @@
- // various members here for more detail on exactly what the conditions are.
- if (in_startup_sleep_ || already_fetched_ || !need_to_fetch_)
- return;
-
- // Some switches should disable the Google URL tracker entirely. If we can't
- // do background networking, we can't do the necessary fetch, and if the user
- // specified a Google base URL manually, we shouldn't bother to look up any
@@ -25,6 +37,9 @@
- already_fetched_ = true;
- fetcher_ = net::URLFetcher::Create(fetcher_id_, GURL(kSearchDomainCheckURL),
- net::URLFetcher::GET, this);
- data_use_measurement::DataUseUserData::AttachToFetcher(
- fetcher_.get(),
- data_use_measurement::DataUseUserData::GOOGLE_URL_TRACKER);
- ++fetcher_id_;
- // We don't want this fetch to set new entries in the cache or cookies, lest
- // we alarm the user.
@@ -47,4 +62,3 @@
- fetcher_->Start();
}

View File

@@ -0,0 +1,29 @@
--- ./chrome/browser/profiles/avatar_menu.cc
+++ ./chrome/browser/profiles/avatar_menu.cc.new
@@ -92,12 +92,7 @@
// TODO: Eliminate this ifdef. Add a delegate interface for the menu which
// would also help remove the Browser dependency in AvatarMenuActions
// implementations.
-#if defined(OS_CHROMEOS)
- // On ChromeOS the menu will not be shown.
return false;
-#else
- return true;
-#endif
}
bool AvatarMenu::CompareItems(const Item* item1, const Item* item2) {
--- ./chrome/browser/ui/webui/options/browser_options_handler.cc
+++ ./chrome/browser/ui/webui/options/browser_options_handler.cc.new
@@ -1506,7 +1506,7 @@
SigninManagerBase* signin = SigninManagerFactory::GetForProfile(profile);
DCHECK(signin);
sync_status->SetBoolean("signoutAllowed", !signout_prohibited);
- sync_status->SetBoolean("signinAllowed", signin->IsSigninAllowed());
+ sync_status->SetBoolean("signinAllowed", false);
sync_status->SetBoolean("syncSystemEnabled", (service != NULL));
sync_status->SetBoolean("setupCompleted",
service && service->HasSyncSetupCompleted());

View File

@@ -1,6 +1,31 @@
--- ./chrome/browser/web_resource/notification_promo.cc
+++ ./chrome/browser/web_resource/notification_promo.cc.new
@@ -34,7 +34,7 @@ namespace {
--- ./chrome/browser/browser_process_impl.cc
+++ ./chrome/browser/browser_process_impl.cc.new
@@ -1082,7 +1082,6 @@
local_state(), chrome::GetChannel(), GetApplicationLocale(),
system_request_context(), switches::kDisableBackgroundNetworking,
base::Bind(safe_json::SafeJsonParser::Parse)));
- promo_resource_service_->StartAfterDelay();
}
#if !defined(OS_ANDROID) && !defined(OS_IOS)
--- ./chrome/browser/signin/signin_promo.cc
+++ ./chrome/browser/signin/signin_promo.cc.new
@@ -105,6 +105,7 @@ bool ShouldShowPromo(Profile* profile) {
bool ShouldShowPromoAtStartup(Profile* profile, bool is_new_profile) {
DCHECK(profile);
+ return false;
// Don't show if the profile is an incognito.
if (profile->IsOffTheRecord())
--- ./components/web_resource/notification_promo.cc
+++ ./components/web_resource/notification_promo.cc.new
@@ -30,7 +30,7 @@ namespace {
const int kDefaultGroupSize = 100;
@@ -9,4 +34,3 @@
// The name of the preference that stores the promotion object.
const char kPrefPromoObject[] = "promo";

View File

@@ -37,4 +37,24 @@
void TranslateLanguageList::SetResourceRequestsAllowed(bool allowed) {
--- ./chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc
+++ ./chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc.new
@@ -145,7 +145,6 @@
return;
}
request_context_getter_ = request_context_getter;
- DownloadDictionary(GetDictionaryURL());
}
bool SpellcheckHunspellDictionary::IsReady() const {
@@ -338,9 +337,6 @@
}
if (request_context_getter_) {
- // Download from the UI thread to check that |request_context_getter_| is
- // still valid.
- DownloadDictionary(GetDictionaryURL());
return;
}
}

View File

@@ -25,17 +25,30 @@
--- ./chrome/browser/net/net_pref_observer.cc
+++ ./chrome/browser/net/net_pref_observer.cc.new
@@ -41,7 +41,7 @@ void NetPrefObserver::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(
prefs::kNetworkPredictionEnabled,
- true,
+ false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(
prefs::kDisableSpdy,
--- ./chrome/browser/net/prediction_options.cc
+++ ./chrome/browser/net/prediction_options.cc.new
@@ -25,7 +25,7 @@ bool CanPrefetchAndPrerender(int network_prediction_options) {
case NETWORK_PREDICTION_NEVER:
return false;
default:
- DCHECK_EQ(NETWORK_PREDICTION_WIFI_ONLY, network_prediction_options);
+ //DCHECK_EQ(NETWORK_PREDICTION_WIFI_ONLY, network_prediction_options);
return !net::NetworkChangeNotifier::IsConnectionCellular(
net::NetworkChangeNotifier::GetConnectionType());
}
--- ./chrome/browser/net/prediction_options.h
+++ ./chrome/browser/net/prediction_options.h.new
@@ -21,7 +21,7 @@ enum NetworkPredictionOptions {
NETWORK_PREDICTION_ALWAYS,
NETWORK_PREDICTION_WIFI_ONLY,
NETWORK_PREDICTION_NEVER,
- NETWORK_PREDICTION_DEFAULT = NETWORK_PREDICTION_WIFI_ONLY,
+ NETWORK_PREDICTION_DEFAULT = NETWORK_PREDICTION_NEVER,
};
void RegisterPredictionOptionsProfilePrefs(
--- ./chrome/browser/background/background_mode_manager.cc
@@ -229,19 +242,6 @@
prefs::kCloudPrintXmppPingEnabled, false);
--- ./components/signin/core/common/profile_management_switches.cc
+++ ./components/signin/core/common/profile_management_switches.cc.new
@@ -33,8 +33,7 @@
bool is_consistent_identity =
base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kEnableAccountConsistency);
- bool not_new_avatar_menu = base::CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kDisableNewAvatarMenu);
+ bool not_new_avatar_menu = 1;
bool not_new_profile_management =
base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kDisableNewProfileManagement);
--- ./chrome/browser/ui/webui/local_discovery/local_discovery_ui.cc
+++ ./chrome/browser/ui/webui/local_discovery/local_discovery_ui.cc.new