| Index: build/android/resource_sizes.py
|
| diff --git a/build/android/resource_sizes.py b/build/android/resource_sizes.py
|
| index 76f03fb4e30f41c81589e574491823e04c8f171d..099f71dec8b6aff80dd142a974bb75c583b9d974 100755
|
| --- a/build/android/resource_sizes.py
|
| +++ b/build/android/resource_sizes.py
|
| @@ -562,12 +562,17 @@
|
| # Calculate aggregate stats about resources across pak files.
|
| resource_count_map = collections.defaultdict(int)
|
| resource_size_map = collections.defaultdict(int)
|
| + seen_data_ids = set()
|
| + alias_overhead_bytes = 4
|
| resource_overhead_bytes = 6
|
| for pak in paks:
|
| - for r in pak.resources:
|
| - resource_count_map[r] += 1
|
| - resource_size_map[r] += len(pak.resources[r]) + resource_overhead_bytes
|
| -
|
| + for k, v in pak.resources.iteritems():
|
| + resource_count_map[k] += 1
|
| + if id(v) not in seen_data_ids:
|
| + seen_data_ids.add(id(v))
|
| + resource_size_map[k] += resource_overhead_bytes + len(v)
|
| + else:
|
| + resource_size_map[k] += alias_overhead_bytes
|
| # Output the overall resource summary.
|
| total_resource_size = sum(resource_size_map.values())
|
| total_resource_count = len(resource_count_map)
|
|
|