- 06 May, 2015 1 commit
-
-
Tamir Duberstein authored
-
- 28 Apr, 2015 7 commits
-
-
Jeff Davidson authored
This is less ideal from a dex count perspective because it requires a new variable for each message, and because most apps have proguard rules that will ensure that CREATOR classes are retained. However, it is required to be able to use nano protos inside of AIDL files, as the autogenerated AIDL code fails to compile otherwise. This is a substantial benefit as it allows for backwards-compatible parameters and return types in AIDL methods along the lines of safeparcel. Bug: 19084705 Change-Id: I66a2c0424b96cf8ff6b631b186cc4f9407dfc1f4
-
Brian Duff authored
It turns out dex (apparently) was inlining these protected final methods from ExtendableMessageNano into every message class. Removing these methods from the base class and inlining their code reduces the method count by 2 methods / message when the store_unknown_fields option is on. Change-Id: I0aa09f2016d39939c4c8b8219601793b8fab301f
-
Brian Duff authored
I wasn't able to get the clear() method to inline into the constructor when optimizations are on in proguard. As a result, every message has an extra superfluous kept method assuming the app never uses clear() directly. There are a couple of instances where setting this option false is necessary in order to get code dexing successfully without hitting the method limit, e.g. https://goto.google.com/tltzq In this example, I tried turning on the method/inlining/unique and method/inlining/short optimizations before resorting to adding the generate_clear option, but the method count did not decrease. The clear() methods were contributing over a thousand extra methods. Change-Id: If6a9651d6a59cdf70b1040d8248779710ac73105
-
Jeff Davidson authored
@IntDef is a support library annotation which allows build tools to determine the valid set of values for a given integer field when that field is intended to be restricted like an enum. This avoids the overhead of enums while still allowing for compile-time type checking in most circumstances. Change-Id: Iee02e0b49a8e069f6456572f538e0a0d301fdfd5
-
Brian Duff authored
Upstreamed from Another Place (cr/57247854). Change-Id: I2aaf59544c0f5ae21a51891d8a5eeda1dc722c90
-
Brian Duff authored
https://android-review.googlesource.com/#/c/67890/ removed field initialization from the ctor, making it just call clear() instead. When I added the generate_clear option back (as part of the reftypes compat mode) in https://android-review.googlesource.com/#/c/109530/, I forgot to ensure that what clear() used to do was inlined in the constructor. This change fixes NPEs that are happening for users of reftypes_compat_mode who rely on unset repeated fields being empty arrays rather than null. Change-Id: Idb58746c60f4a4054b7ebb5c3b0e76b16ff88184
-
Brian Duff authored
Previously, extensions with field numbers greater than 268435455 would result in a compile time error in generated code that looks something like this: Foo.java:3178: error: integer number too large: 3346754610 3346754610); This is because we were trying to represent the tag number (an unsigned int) using a java int constant, but java int constants are signed, and can't exceed Integer.MAX_VALUE. Fixed by declaring it as a long instead, and casting it down to an int in the implementation. This is safe, because the tag value always fits in 32 bis. Change-Id: If2017bacb4e20af667eaeaf9b65ddc2c30a7709f
-
- 24 Apr, 2015 1 commit
-
-
Feng Xiao authored
-
- 20 Apr, 2015 1 commit
-
-
Feng Xiao authored
Change-Id: I122f1cee71a8a739ea603e52582cb0fa9698f0ed
-
- 10 Apr, 2015 1 commit
-
-
Tamir Duberstein authored
Use stdlib's 'unittest' instead.
-
- 31 Mar, 2015 1 commit
-
-
Tamir Duberstein authored
This fixes the problem where `make check` generates files not ignored by `.gitignore`.
-
- 27 Mar, 2015 1 commit
-
-
Kenton Varda authored
The file `SEBS` is a build file for a toy build system I was writing in my spare time six years ago, back when I maintained protobufs. Arguably it was never appropriate for me to have placed this file in the protobuf tree, but it was convenient at the time and didn't seem to hurt anything. It clearly doesn't belong here now, though.
-
- 18 Mar, 2015 1 commit
-
-
Tamir Duberstein authored
-
- 16 Mar, 2015 1 commit
-
-
Chris Conroy authored
-
- 14 Mar, 2015 2 commits
- 06 Mar, 2015 1 commit
-
-
Jisi Liu authored
Change-Id: I1a3acadd059f87c26a2e26f3b7a169c0780e981e
-
- 02 Mar, 2015 5 commits
-
-
Jisi Liu authored
class definition, which is a C++11 extension. Change-Id: I477fe484d737f4c60c519d68f431940ffaa33431
-
Jisi Liu authored
The later is not supported by some versions of MSVC and the former is more accurate for the use case. Change-Id: I7096226b1ebfef8340d288bbaf2788540aa3e97f
-
Jisi Liu authored
Change-Id: Ic0fdb52c17b9495c73b8ce15879531383a148585
-
Jisi Liu authored
Change-Id: Idc5fb65a2cc469d55aff6f2cde0b51b326be0963
-
Jisi Liu authored
Change-Id: Iaa75f8333541bc378bea699e7f147c7f17b652ad
-
- 01 Mar, 2015 1 commit
-
-
Jisi Liu authored
- Maps for C++ lite - C++ Arena optimizations. - Java Lite runtime code size optimization. Change-Id: I7537a4357c1cb385d23f9e8aa7ffdfeefe079f13
-
- 26 Feb, 2015 5 commits
-
-
Jisi Liu authored
anyother targets. Change-Id: I507009cd92a711739d7d58ccee93dfbf0a9fe135
-
Jisi Liu authored
Change-Id: I7f745929b137b93c122448a4a2d9a7bbab6648d6
-
Josh Haberman authored
* Rosy hack doesn't apply (that test should be removed for the open-source release). * Added our own copy of parameterized.py (the open-source version of Google Apputils doesn't contain it). * The C++ Descriptor object didn't implement extension_ranges. * Had to implement a hack around returning EncodeError, to work around the module-loading behavior of the test runner.
-
Jisi Liu authored
in the map_field_inl.h Change-Id: Ieeaab5507ee34b317d76b5937beb67c298905eb4
-
Jisi Liu authored
Change-Id: I34d301133eea9c6f3a822c47d1f91e136fd33145
-
- 25 Feb, 2015 1 commit
-
-
Jisi Liu authored
Change-Id: Id937e25bbb35968ee76c92bd4a8ce6247408c443
-
- 24 Feb, 2015 1 commit
-
-
Jisi Liu authored
field. Change-Id: Idb5b53da5accd24038a895aba49b684eeee95814
-
- 22 Feb, 2015 1 commit
-
-
Jisi Liu authored
Disable commandline interface test for heap check tests. Change-Id: I02aa2ad9704e3c70dcecae8b3b3557b18607d455
-
- 21 Feb, 2015 1 commit
-
-
Jisi Liu authored
pass in systems without rtti. Change-Id: Ib32b47a66f14928de9399c49dbdb07263a30d1bc
-
- 20 Feb, 2015 7 commits