commit | 8fb88d6d25bf8d05f99be766fa1756bc3b6538ec | [log] [tgz] |
---|---|---|
author | David Turner <digit@chromium.org> | Thu Apr 18 08:43:44 2019 |
committer | Commit Bot <commit-bot@chromium.org> | Thu Apr 18 08:43:44 2019 |
tree | 2405340d29740c8ffaffcfa83857ba9257d64639 | |
parent | 7dceef3e89abc648251344e5d5ee1e05e0b2996b [diff] |
Revert "android: Do not compress locale .pak files inside bundle splits." This reverts commit e5615fc965b7548256e8650415a04aee35aea071. Reason for revert: Makes Chrome crash on startup on some Android L devices (http://crbug.com/953932) Original change's description: > android: Do not compress locale .pak files inside bundle splits. > > This CL ensures that the locale-related pak files stored in > app bundle splits are stored uncompressed inside the language-based > splits (e.g. base-fr.apk for the French language), and are read > directly from it. > > Benefits include: > - Less disk i/o during Chrome startup for bundles. > > - Reduced overall install size, since the corresponding files > need not be extracted. I.e. since the compression ratio is > roughly 50% for locale .pak files, we have something like. > > Before: compressed 50 kiB (APK) + uncompressed 100 kiB (/data) > After: uncompressed 100 kiB (APK) > > However, this increases the size of the base and split apks slightly. > > In more details: > > - Modify create_app_bundle.py to ensure that the split-specific > locale .pak files are never compressed. > > Also, move the en-GB.pak file location from fallback-locales/ > to the split-specific locales#lang_en/, this ensures that the > file will end up in the English-based split (base-en.apk) > instead. > > - Modify ResourceExtractor.java to only extract the locale .pak > files in regular APKs, ignoring the ones from bundles. Also make > the log messages disappear unless the DEBUG final variable is > set to true (less logs are always better for startup time). > > - Modify ResourceBundle.java to check for the presence of > split-specific locale .pak files as well, and to also check > that the corresponding file path being returned actually > exists inside the apk or bundle. > > - Modify ResourceBundle::LoadLocaleResources() to try loading > the split-specific locale pak files before the extracted version > if available, and add a technical note explaining what the code > is trying to do (it is sufficiently subtle to be explained). > > - Add missing dependencies to the vr_android_unittests and > shell_dialogs_unittest targets. They otherwise fail to > build due to http://crbug.com/951419. > > BUG=933943,933962, 951419 > R=agrieve@chromium.org,yfriedman@chromium.org,estevenson@chromium.org,benmason@chromium.org,dtrainor@chromium.org,jaekyun@chromium.org > TBR=sky@chromium.org > > Change-Id: I02c1688b8f8ed8f62cfdaa1f12c2ea15f8198e4a > Binary-Size: Increments overall bundle size by 100 kiB, but reduces overall install size by about 50% of that. > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1514684 > Commit-Queue: David Turner <digit@chromium.org> > Reviewed-by: Tibor Goldschwendt <tiborg@chromium.org> > Reviewed-by: David Trainor <dtrainor@chromium.org> > Reviewed-by: Andrew Grieve <agrieve@chromium.org> > Cr-Commit-Position: refs/heads/master@{#650753} TBR=sky@chromium.org,digit@chromium.org,yfriedman@chromium.org,thakis@chromium.org,dtrainor@chromium.org,cjgrant@chromium.org,jaekyun@chromium.org,agrieve@chromium.org,estevenson@chromium.org,tiborg@chromium.org,benmason@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 933943, 933962, 951419, 953932 Change-Id: I680424df94a9221d0d388d03df4c0bcd350dfb21 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1572402 Reviewed-by: David Turner <digit@chromium.org> Commit-Queue: David Turner <digit@chromium.org> Cr-Commit-Position: refs/heads/master@{#652078}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .