diff options
author | Adam Lesinski <adamlesinski@google.com> | 2017-10-18 15:07:33 -0700 |
---|---|---|
committer | Adam Lesinski <adamlesinski@google.com> | 2017-10-18 15:12:42 -0700 |
commit | 8a0b238b1344dae0042bbb17b71c0c3b9b881f22 (patch) | |
tree | 08e3b0916bdee1b41d98a58e9049b9938ee6b10b /tools/aapt2/StringPool.cpp | |
parent | 85e7dbc93ee35d134a75a352093baf29127715ea (diff) |
AAPT2: Ensure strings are sorted by configuration
Keep strings sorted by configuration so that strings likely
to be selected (all match the same locale, for instance) are
close together.
Bug: 67958501
Test: make aapt2_tests
Change-Id: Id17d93bf2e03ce408a6f619d3ea6dc313e393b76
Diffstat (limited to 'tools/aapt2/StringPool.cpp')
-rw-r--r-- | tools/aapt2/StringPool.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/aapt2/StringPool.cpp b/tools/aapt2/StringPool.cpp index 705b1ab052af..3a1a18c01e1c 100644 --- a/tools/aapt2/StringPool.cpp +++ b/tools/aapt2/StringPool.cpp @@ -191,6 +191,13 @@ StringPool::Ref StringPool::MakeRefImpl(const StringPiece& str, const Context& c return Ref(borrow); } +StringPool::Ref StringPool::MakeRef(const Ref& ref) { + if (ref.entry_->pool_ == this) { + return ref; + } + return MakeRef(ref.entry_->value, ref.entry_->context); +} + StringPool::StyleRef StringPool::MakeRef(const StyleString& str) { return MakeRef(str, Context{}); } |