Date: Thursday, January 16, 2014 @ 01:43:55 Author: foutrelis Revision: 204265
upgpkg: chromium 32.0.1700.77-1 New upstream release. Added: chromium/trunk/chromium-32.0.1700.76-diff-to-32.0.1700.77.patch Modified: chromium/trunk/PKGBUILD Deleted: chromium/trunk/chromium-31.0.1650.48-NPAPI-cookies.patch chromium/trunk/chromium-31.0.1650.48-NPN_URLRedirectResponse.patch chromium/trunk/chromium-system-icu-r0.patch -----------------------------------------------------+ PKGBUILD | 41 -- chromium-31.0.1650.48-NPAPI-cookies.patch | 276 ------------------ chromium-31.0.1650.48-NPN_URLRedirectResponse.patch | 13 chromium-32.0.1700.76-diff-to-32.0.1700.77.patch | 47 +++ chromium-system-icu-r0.patch | 26 - 5 files changed, 62 insertions(+), 341 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2014-01-15 22:34:33 UTC (rev 204264) +++ PKGBUILD 2014-01-16 00:43:55 UTC (rev 204265) @@ -5,9 +5,10 @@ # Contributor: Daniel J Griffiths <ghost1...@archlinux.us> pkgname=chromium -pkgver=31.0.1650.63 +pkgver=32.0.1700.77 +_srcver=32.0.1700.76 _toolchains_rev=12181 -pkgrel=2 +pkgrel=1 pkgdesc="The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser" arch=('i686' 'x86_64') url="http://www.chromium.org/" @@ -23,7 +24,7 @@ backup=('etc/chromium/default') options=('!strip') install=chromium.install -source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.xz +source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$_srcver.tar.xz naclsdk_nacl_linux_x86-$_toolchains_rev.tgz::https://commondatastorage.googleapis.com/nativeclient-archive2/toolchain/$_toolchains_rev/naclsdk_linux_x86.tgz naclsdk_pnacl_linux_x86-$_toolchains_rev.tgz::https://commondatastorage.googleapis.com/nativeclient-archive2/toolchain/$_toolchains_rev/naclsdk_pnacl_linux_x86.tgz naclsdk_pnacl_translator-$_toolchains_rev.tgz::https://commondatastorage.googleapis.com/nativeclient-archive2/toolchain/$_toolchains_rev/naclsdk_pnacl_translator.tgz @@ -30,14 +31,12 @@ naclsdk_pnacl_translator-$_toolchains_rev.tgz.sha1hash::https://commondatastorage.googleapis.com/nativeclient-archive2/toolchain/$_toolchains_rev/naclsdk_pnacl_translator.tgz.sha1hash chromium.desktop chromium.default - chromium.sh - chromium-31.0.1650.48-NPN_URLRedirectResponse.patch - chromium-31.0.1650.48-NPAPI-cookies.patch - chromium-system-icu-r0.patch) + chromium-32.0.1700.76-diff-to-32.0.1700.77.patch + chromium.sh) noextract=(naclsdk_nacl_linux_x86-$_toolchains_rev.tgz naclsdk_pnacl_linux_x86-$_toolchains_rev.tgz naclsdk_pnacl_translator-$_toolchains_rev.tgz) -sha256sums=('7f0a37391b2829fa077426127f61b830cca51518e6a55ace2bf397aba9e52008' +sha256sums=('4aad8c69dd575f76b8490142f55f8a620fbdd5567e54d3510ae6243358a08d1e' 'cb4ac159f61de5e75d339813c0fc74f986156310a2c43a30ba40125951e72450' 'ad229b69a5af72a9fa7cf2167ee48560cc11049206e4ef919cb31d1273d6409f' 'fdb8309ef2b1c8600d63c4420ac02d66d85ab9befe98d99e9706828870730077' @@ -44,10 +43,8 @@ '162cf456b0a1cb4ce505004f828a09164ee3e3c8274739c6d5e972bf0ef1cfe9' '09bfac44104f4ccda4c228053f689c947b3e97da9a4ab6fa34ce061ee83d0322' '478340d5760a9bd6c549e19b1b5d1c5b4933ebf5f8cfb2b3e2d70d07443fe232' - '4999fded897af692f4974f0a3e3bbb215193519918a1fa9b31ed51e74a2dccb9' - 'c2e56730e0cf962d762d18abf8488e1b19b4688ce39d22dd74c47dba7996319b' - 'b24f58147333eb29f762aec58742db74825b587def3d6daf16c8cd315ce6ccff' - '9bf164094ff33565f79807ab17cbd1d3f75655383fdaa01bb1a702263174cf09') + '3b167d9480a6472c60ad9493f9a92b0cf79785a029bd0e886ab275f923b510df' + '4999fded897af692f4974f0a3e3bbb215193519918a1fa9b31ed51e74a2dccb9') # 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 @@ -58,19 +55,12 @@ _google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4 prepare() { - cd "$srcdir/$pkgname-$pkgver" + cd "$srcdir/$pkgname-$_srcver" - # Black screen is displayed when playing a video with NPAPI plugin - # http://code.google.com/p/chromium/issues/detail?id=301510 - patch -Np0 -i "$srcdir/chromium-31.0.1650.48-NPN_URLRedirectResponse.patch" + # Source tarball for 32.0.1700.77 is currently missing so we might as well + # patch 32.0.1700.76 with the single change before 32.0.1700.77 was tagged + patch -Np1 -i "$srcdir/chromium-32.0.1700.76-diff-to-32.0.1700.77.patch" - # Cookies not being sent with plugin requests - # http://code.google.com/p/chromium/issues/detail?id=316511 - patch -Np0 -i "$srcdir/chromium-31.0.1650.48-NPAPI-cookies.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 \ -e 's|/usr/bin/python$|&2|g' \ @@ -93,7 +83,7 @@ } build() { - cd "$srcdir/$pkgname-$pkgver" + cd "$srcdir/$pkgname-$_srcver" export PATH="$srcdir/python2-path:$PATH" @@ -116,7 +106,6 @@ -Dlinux_strip_binary=1 -Dlinux_use_gold_binary=0 -Dlinux_use_gold_flags=0 - -Dlinux_use_tcmalloc=0 -Dlogging_like_official_build=1 -Drelease_extra_cflags="$CFLAGS" -Dlibspeechd_h_prefix=speech-dispatcher/ @@ -148,7 +137,7 @@ } package() { - cd "$srcdir/$pkgname-$pkgver" + cd "$srcdir/$pkgname-$_srcver" install -D out/Release/chrome "$pkgdir/usr/lib/chromium/chromium" Deleted: chromium-31.0.1650.48-NPAPI-cookies.patch =================================================================== --- chromium-31.0.1650.48-NPAPI-cookies.patch 2014-01-15 22:34:33 UTC (rev 204264) +++ chromium-31.0.1650.48-NPAPI-cookies.patch 2014-01-16 00:43:55 UTC (rev 204265) @@ -1,276 +0,0 @@ -Index: content/browser/child_process_security_policy_impl.cc -=================================================================== ---- content/browser/child_process_security_policy_impl.cc (revision 233522) -+++ content/browser/child_process_security_policy_impl.cc (working copy) -@@ -793,7 +793,7 @@ - bool ChildProcessSecurityPolicyImpl::CanSendCookiesForOrigin(int child_id, - const GURL& gurl) { - for (PluginProcessHostIterator iter; !iter.Done(); ++iter) { -- if (iter.GetData().process_type == child_id) { -+ if (iter.GetData().id == child_id) { - if (iter.GetData().process_type == PROCESS_TYPE_PLUGIN) { - // NPAPI plugin processes are unsandboxed and so are trusted. Plugins - // can make request to any origin. -Index: content/browser/plugin_browsertest.cc -=================================================================== ---- content/browser/plugin_browsertest.cc (revision 233522) -+++ content/browser/plugin_browsertest.cc (working copy) -@@ -5,15 +5,21 @@ - #include "base/command_line.h" - #include "base/file_util.h" - #include "base/path_service.h" -+#include "base/strings/string_util.h" - #include "base/strings/utf_string_conversions.h" -+#include "content/browser/loader/resource_dispatcher_host_impl.h" - #include "content/public/browser/browser_thread.h" -+#include "content/public/browser/resource_dispatcher_host_delegate.h" - #include "content/public/common/content_switches.h" - #include "content/public/test/browser_test_utils.h" -+#include "content/public/test/test_utils.h" - #include "content/shell/browser/shell.h" - #include "content/shell/common/shell_switches.h" - #include "content/test/content_browser_test.h" - #include "content/test/content_browser_test_utils.h" - #include "content/test/net/url_request_mock_http_job.h" -+#include "net/test/embedded_test_server/embedded_test_server.h" -+#include "net/url_request/url_request.h" - #include "ui/gfx/rect.h" - - #if defined(OS_WIN) -@@ -468,4 +474,77 @@ - } - #endif // defined(OS_WIN) - -+class TestResourceDispatcherHostDelegate -+ : public ResourceDispatcherHostDelegate { -+ public: -+ TestResourceDispatcherHostDelegate() : found_cookie_(false) {} -+ -+ bool found_cookie() { return found_cookie_; } -+ -+ void WaitForPluginRequest() { -+ if (found_cookie_) -+ return; -+ -+ runner_ = new MessageLoopRunner; -+ runner_->Run(); -+ } -+ -+ private: -+ // ResourceDispatcherHostDelegate implementation: -+ virtual void OnResponseStarted( -+ net::URLRequest* request, -+ ResourceContext* resource_context, -+ ResourceResponse* response, -+ IPC::Sender* sender) OVERRIDE { -+ // The URL below comes from plugin_geturl_test.cc. -+ if (!EndsWith(request->url().spec(), -+ "npapi/plugin_ref_target_page.html", -+ true)) { -+ return; -+ } -+ net::HttpRequestHeaders headers; -+ bool found_cookie = false; -+ if (request->GetFullRequestHeaders(&headers) && -+ headers.ToString().find("Cookie: blah") != std::string::npos) { -+ found_cookie = true; -+ } -+ BrowserThread::PostTask( -+ BrowserThread::UI, -+ FROM_HERE, -+ base::Bind(&TestResourceDispatcherHostDelegate::GotCookie, -+ base::Unretained(this), found_cookie)); -+ } -+ -+ void GotCookie(bool found_cookie) { -+ found_cookie_ = found_cookie; -+ if (runner_) -+ runner_->QuitClosure().Run(); -+ } -+ -+ scoped_refptr<MessageLoopRunner> runner_; -+ bool found_cookie_; -+ -+ DISALLOW_COPY_AND_ASSIGN(TestResourceDispatcherHostDelegate); -+}; -+ -+// Ensure that cookies get sent with plugin requests. -+IN_PROC_BROWSER_TEST_F(PluginTest, MAYBE(Cookies)) { -+ // Create a new browser just to ensure that the plugin process' child_id is -+ // not equal to its type (PROCESS_TYPE_PLUGIN), as that was the error which -+ // caused this bug. -+ NavigateToURL(CreateBrowser(), GURL("about:blank")); -+ -+ ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); -+ GURL url(embedded_test_server()->GetURL("/npapi/cookies.html")); -+ -+ TestResourceDispatcherHostDelegate test_delegate; -+ ResourceDispatcherHostDelegate* old_delegate = -+ ResourceDispatcherHostImpl::Get()->delegate(); -+ ResourceDispatcherHostImpl::Get()->SetDelegate(&test_delegate); -+ LoadAndWait(url); -+ test_delegate.WaitForPluginRequest(); -+ ASSERT_TRUE(test_delegate.found_cookie()); -+ ResourceDispatcherHostImpl::Get()->SetDelegate(old_delegate); -+} -+ - } // namespace content -Index: content/test/data/npapi/cookies.html -=================================================================== ---- content/test/data/npapi/cookies.html (revision 0) -+++ content/test/data/npapi/cookies.html (revision 0) -@@ -0,0 +1,27 @@ -+<html> -+ -+<head> -+<script src="npapi.js"></script> -+<script>document.cookie="blah"</script> -+</head> -+ -+ -+<body> -+<div id="statusPanel" style="border: 1px solid red; width: 100%"> -+Test running.... -+</div> -+ -+ -+Cookies Test<p> -+This test fetches an URL via the plugin, and verifies that the cookies are sent -+with plugin-initiated requests. -+ -+<embed type="application/vnd.npapi-test" -+ src="foo" -+ name="cookies" -+ id="1" -+ mode="np_embed" -+> -+ -+</body> -+</html> - -Property changes on: content\test\data\npapi\cookies.html -___________________________________________________________________ -Added: svn:mime-type - + text/html -Added: svn:eol-style - + LF - -Index: content/test/plugin/plugin_geturl_test.cc -=================================================================== ---- content/test/plugin/plugin_geturl_test.cc (revision 233522) -+++ content/test/plugin/plugin_geturl_test.cc (working copy) -@@ -48,7 +48,8 @@ - expect_404_response_(false), - npn_evaluate_context_(false), - handle_url_redirects_(false), -- received_url_redirect_notification_(false) { -+ received_url_redirect_notification_(false), -+ check_cookies_(false) { - } - - PluginGetURLTest::~PluginGetURLTest() {} -@@ -78,7 +79,14 @@ - "geturlredirectnotify")) { - handle_url_redirects_ = true; - } -- return PluginTest::New(mode, argc, argn, argv, saved); -+ -+ NPError error = PluginTest::New(mode, argc, argn, argv, saved); -+ -+ // The above sets test_name(). -+ if (test_name() == "cookies") -+ check_cookies_ = true; -+ -+ return error; - } - - NPError PluginGetURLTest::SetWindow(NPWindow* pNPWindow) { -@@ -108,6 +116,13 @@ - id(), REDIRECT_SRC_URL, NULL, - reinterpret_cast<void*>(REDIRECT_SRC_URL_NOTIFICATION_ID)); - return NPERR_NO_ERROR; -+ } else if (check_cookies_) { -+ HostFunctions()->geturlnotify( -+ id(), -+ "plugin_ref_target_page.html", -+ NULL, -+ reinterpret_cast<void*>(SELF_URL_STREAM_ID)); -+ return NPERR_NO_ERROR; - } - - std::string url = SELF_URL; -@@ -161,7 +176,7 @@ - return NPERR_NO_ERROR; - } - -- if (!fail_write_url_.empty()) { -+ if (!fail_write_url_.empty() || check_cookies_) { - return NPERR_NO_ERROR; - } - -@@ -217,7 +232,7 @@ - return PluginTest::WriteReady(stream); - } - -- if (!referrer_target_url_.empty()) { -+ if (!referrer_target_url_.empty() || check_cookies_) { - return STREAM_CHUNK; - } - -@@ -242,7 +257,7 @@ - return -1; - } - -- if (!referrer_target_url_.empty()) { -+ if (!referrer_target_url_.empty() || check_cookies_) { - return len; - } - -@@ -314,6 +329,11 @@ - return NPERR_NO_ERROR; - } - -+ if (check_cookies_) { -+ SignalTestCompleted(); -+ return NPERR_NO_ERROR; -+ } -+ - unsigned long stream_id = - reinterpret_cast<unsigned long>(stream->notifyData); - switch (stream_id) { -@@ -367,6 +387,9 @@ - return; - } - -+ if (check_cookies_) -+ return; -+ - COMPILE_ASSERT(sizeof(unsigned long) <= sizeof(data), cast_validity_check); - unsigned long stream_id = reinterpret_cast<unsigned long>(data); - switch (stream_id) { -Index: content/test/plugin/plugin_geturl_test.h -=================================================================== ---- content/test/plugin/plugin_geturl_test.h (revision 233522) -+++ content/test/plugin/plugin_geturl_test.h (working copy) -@@ -57,6 +57,7 @@ - std::string page_not_found_url_; - std::string fail_write_url_; - std::string referrer_target_url_; -+ bool check_cookies_; - }; - - } // namespace NPAPIClient -Index: content/test/plugin/plugin_test_factory.cc -=================================================================== ---- content/test/plugin/plugin_test_factory.cc (revision 233522) -+++ content/test/plugin/plugin_test_factory.cc (working copy) -@@ -38,7 +38,8 @@ - } else if (test_name == "geturl" || test_name == "geturl_404_response" || - test_name == "geturl_fail_write" || - test_name == "plugin_referrer_test" || -- test_name == "geturlredirectnotify") { -+ test_name == "geturlredirectnotify" || -+ test_name == "cookies") { - new_test = new PluginGetURLTest(instance, host_functions); - } else if (test_name == "npobject_identity") { - new_test = new NPObjectIdentityTest(instance, host_functions); Deleted: chromium-31.0.1650.48-NPN_URLRedirectResponse.patch =================================================================== --- chromium-31.0.1650.48-NPN_URLRedirectResponse.patch 2014-01-15 22:34:33 UTC (rev 204264) +++ chromium-31.0.1650.48-NPN_URLRedirectResponse.patch 2014-01-16 00:43:55 UTC (rev 204265) @@ -1,13 +0,0 @@ -Index: content/child/npapi/plugin_url_fetcher.cc -=================================================================== ---- content/child/npapi/plugin_url_fetcher.cc (revision 233351) -+++ content/child/npapi/plugin_url_fetcher.cc (working copy) -@@ -145,7 +145,7 @@ - - void PluginURLFetcher::URLRedirectResponse(bool allow) { - if (allow) { -- bridge_->SetDefersLoading(true); -+ bridge_->SetDefersLoading(false); - } else { - bridge_->Cancel(); - plugin_stream_->DidFail(resource_id_); // That will delete |this|. Added: chromium-32.0.1700.76-diff-to-32.0.1700.77.patch =================================================================== --- chromium-32.0.1700.76-diff-to-32.0.1700.77.patch (rev 0) +++ chromium-32.0.1700.76-diff-to-32.0.1700.77.patch 2014-01-16 00:43:55 UTC (rev 204265) @@ -0,0 +1,47 @@ +Index: src/chrome/VERSION +=================================================================== +--- src/chrome/VERSION (revision 244501) ++++ src/chrome/VERSION (revision 244503) +@@ -1,4 +1,4 @@ + MAJOR=32 + MINOR=0 + BUILD=1700 +-PATCH=76 ++PATCH=77 +Index: src/chrome/browser/browser_process_impl.cc +=================================================================== +--- src/chrome/browser/browser_process_impl.cc (revision 244501) ++++ src/chrome/browser/browser_process_impl.cc (revision 244503) +@@ -882,7 +882,6 @@ + prefs::kMetricsReportingEnabled, + base::Bind(&BrowserProcessImpl::ApplyMetricsReportingPolicy, + base::Unretained(this))); +- ApplyMetricsReportingPolicy(); + #endif + + int max_per_proxy = local_state_->GetInteger(prefs::kMaxConnectionsPerProxy); +@@ -912,6 +911,10 @@ + if (local_state_->IsManagedPreference(prefs::kDefaultBrowserSettingEnabled)) + ApplyDefaultBrowserPolicy(); + ++#if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) && !defined(OS_IOS) ++ ApplyMetricsReportingPolicy(); ++#endif ++ + #if defined(ENABLE_PLUGINS) + PluginService* plugin_service = PluginService::GetInstance(); + plugin_service->SetFilter(ChromePluginServiceFilter::GetInstance()); +@@ -1037,11 +1040,11 @@ + + void BrowserProcessImpl::ApplyMetricsReportingPolicy() { + #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) && !defined(OS_IOS) +- BrowserThread::PostTask( ++ CHECK(BrowserThread::PostTask( + BrowserThread::FILE, FROM_HERE, + base::Bind( + base::IgnoreResult(&GoogleUpdateSettings::SetCollectStatsConsent), +- local_state()->GetBoolean(prefs::kMetricsReportingEnabled))); ++ local_state()->GetBoolean(prefs::kMetricsReportingEnabled)))); + #endif + } + Deleted: chromium-system-icu-r0.patch =================================================================== --- chromium-system-icu-r0.patch 2014-01-15 22:34:33 UTC (rev 204264) +++ chromium-system-icu-r0.patch 2014-01-16 00:43:55 UTC (rev 204265) @@ -1,26 +0,0 @@ ---- 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': {