extra/chromium to 30.0.1599.66-1

This commit is contained in:
Kevin Mihelich 2013-10-03 00:00:54 +00:00
parent 0d6626c560
commit 00f23043d1
4 changed files with 37 additions and 61 deletions

View file

@ -23,7 +23,7 @@ buildarch=20
highmem=1
pkgname=chromium
pkgver=29.0.1547.76
pkgver=30.0.1599.66
pkgrel=1
pkgdesc="The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser"
arch=('armv6h' 'armv7h')
@ -45,18 +45,18 @@ source=(https://gsdview.appspot.com/chromium-browser-official/$pkgname-$pkgver.t
chromium.desktop
chromium.default
chromium.sh
chromium-28.0.1500.71-avoid-std-string-copying-in-GetFileNameInWhitelist.patch
chromium-system-icu-r0.patch
arm-webrtc-fix.patch
chromium-system-ffmpeg-r7.patch
skia.patch)
sha256sums=('61db2740f6eb7f95aeadf20d5e34a5c6759e9e8d08b88f5c960e041cfc502888'
sha256sums=('8fe8262fd69b59c759916d17eaf4225d1d5b64c468629cb9a684144d3cd15724'
'09bfac44104f4ccda4c228053f689c947b3e97da9a4ab6fa34ce061ee83d0322'
'478340d5760a9bd6c549e19b1b5d1c5b4933ebf5f8cfb2b3e2d70d07443fe232'
'4999fded897af692f4974f0a3e3bbb215193519918a1fa9b31ed51e74a2dccb9'
'7c2e448c30677999f524f9513c2f998f3cb15bc6084692cad9c3f310aa813530'
'9bf164094ff33565f79807ab17cbd1d3f75655383fdaa01bb1a702263174cf09'
'222ec0db5d40b02e4ebbde8a1f1c5de3f0579e51836be87be138c44f8487d0ce'
'4093f87f16f8dc4dd846a88d5b6faf91bed2542308c6a11fef93400c94dbf192'
'8a68654df274de9fd93d0d16dc18ba556cac7b08e69b4abc33538ec265822321')
'77668a94924c6bce6c48ca78c5cb778c6728bb687b66334b7164d7301a267939')
# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
# Note: These are for Arch Linux use ONLY. For your own distribution, please
@ -79,10 +79,8 @@ prepare() {
# Temp fix for skia
patch -Np0 -i "$srcdir/skia.patch"
# Fix deadlock related to the GPU sandbox when tcmalloc isn't used
# https://code.google.com/p/chromium/issues/detail?id=255063
# https://bugs.gentoo.org/show_bug.cgi?id=471198#c23
patch -Np1 -i "$srcdir/chromium-28.0.1500.71-avoid-std-string-copying-in-GetFileNameInWhitelist.patch"
# Fix build with system ICU (patch from Gentoo)
patch -Np0 -i "$srcdir/chromium-system-icu-r0.patch"
# Use Python 2
find . -type f -exec sed -i -r \
@ -131,7 +129,6 @@ fi
-Dlinux_link_libpci=1
-Dlinux_link_libspeechd=1
-Dlinux_link_pulseaudio=1
-Dlinux_sandbox_path=/usr/lib/chromium/chromium-sandbox
-Dlinux_strip_binary=1
-Dlinux_use_gold_binary=0
-Dlinux_use_gold_flags=0
@ -157,7 +154,6 @@ fi
-Duse_system_zlib=0
-Duse_gconf=0
-Ddisable_glibc=1
-Ddisable_newlib_untar=1
-Ddisable_sse2=1
-Dtarget_arch=arm
-Darm_neon=0
@ -181,7 +177,7 @@ package() {
install -D out/Release/chrome "$pkgdir/usr/lib/chromium/chromium"
install -Dm4755 -o root -g root out/Release/chrome_sandbox \
"$pkgdir/usr/lib/chromium/chromium-sandbox"
"$pkgdir/usr/lib/chromium/chrome-sandbox"
cp out/Release/*.pak \
"$pkgdir/usr/lib/chromium/"

View file

@ -1,46 +0,0 @@
Index: sandbox/linux/services/broker_process.cc
diff --git a/sandbox/linux/services/broker_process.cc b/sandbox/linux/services/broker_process.cc
index d2302ea098215c8188eb74b0d36da37506ff302a..7999e77fa34fcef4ad8575fa905d66f645df6986 100644
--- a/sandbox/linux/services/broker_process.cc
+++ b/sandbox/linux/services/broker_process.cc
@@ -53,7 +53,7 @@ static const int kCurrentProcessOpenFlagsMask = O_CLOEXEC;
// async signal safe if |file_to_open| is NULL.
// TODO(jln): assert signal safety.
bool GetFileNameInWhitelist(const std::vector<std::string>& allowed_file_names,
- const std::string& requested_filename,
+ const char* requested_filename,
const char** file_to_open) {
if (file_to_open && *file_to_open) {
// Make sure that callers never pass a non-empty string. In case callers
@@ -62,13 +62,17 @@ bool GetFileNameInWhitelist(const std::vector<std::string>& allowed_file_names,
RAW_LOG(FATAL, "*file_to_open should be NULL");
return false;
}
+
+ // Look for |requested_filename| in |allowed_file_names|.
+ // We don't use ::find() because it takes a std::string and
+ // the conversion allocates memory.
std::vector<std::string>::const_iterator it;
- it = std::find(allowed_file_names.begin(), allowed_file_names.end(),
- requested_filename);
- if (it < allowed_file_names.end()) { // requested_filename was found?
- if (file_to_open)
- *file_to_open = it->c_str();
- return true;
+ for (it = allowed_file_names.begin(); it != allowed_file_names.end(); it++) {
+ if (strcmp(requested_filename, it->c_str()) == 0) {
+ if (file_to_open)
+ *file_to_open = it->c_str();
+ return true;
+ }
}
return false;
}
@@ -393,6 +397,7 @@ void BrokerProcess::AccessFileForIPC(const std::string& requested_filename,
const char* file_to_access = NULL;
const bool safe_to_access_file = GetFileNameIfAllowedToAccess(
requested_filename.c_str(), mode, &file_to_access);
+
if (safe_to_access_file) {
CHECK(file_to_access);
int access_ret = access(file_to_access, mode);

View file

@ -0,0 +1,26 @@
--- build/linux/unbundle/icu.gyp.orig 2013-09-27 18:18:50.531839532 +0000
+++ build/linux/unbundle/icu.gyp 2013-09-27 18:19:08.301950500 +0000
@@ -7,6 +7,7 @@
{
'target_name': 'system_icu',
'type': 'none',
+ 'toolsets': ['host', 'target'],
'direct_dependent_settings': {
'defines': [
'U_USING_ICU_NAMESPACE=0',
@@ -30,6 +31,7 @@
{
'target_name': 'icui18n',
'type': 'none',
+ 'toolsets': ['host', 'target'],
'dependencies': ['system_icu'],
'export_dependent_settings': ['system_icu'],
'variables': {
@@ -116,6 +118,7 @@
{
'target_name': 'icuuc',
'type': 'none',
+ 'toolsets': ['host', 'target'],
'dependencies': ['system_icu'],
'export_dependent_settings': ['system_icu'],
'variables': {

View file

@ -1,6 +1,6 @@
--- skia/skia.gyp.orig 2013-08-21 15:19:34.068777150 -0600
+++ skia/skia.gyp 2013-08-21 15:20:16.163601088 -0600
@@ -753,6 +753,7 @@
--- skia/skia_library_opts.gyp.orig 2013-10-02 17:58:46.454702283 -0600
+++ skia/skia_library_opts.gyp 2013-10-02 17:58:17.649830405 -0600
@@ -110,6 +110,7 @@
'../third_party/skia/src/opts/SkBlitRow_opts_arm.cpp',
'../third_party/skia/src/opts/SkBlitRow_opts_arm.h',
'../third_party/skia/src/opts/opts_check_arm.cpp',