Commit Graph

1024 Commits

Author SHA1 Message Date
Ben Gruver
2312848efc Make ClassFileNameHandler thread-safe 2015-01-21 07:42:30 -06:00
Ben Gruver
d9e5b0a487 Switch the default for implicit references 2015-01-21 07:42:18 -06:00
Ben Gruver
97c52167cf Add stringtemplate dependency to smali, because proguard.
Conflicts:
	build.gradle
2015-01-21 07:42:02 -06:00
Ben Gruver
59a0d2f09b Refactor ClassFileNameHandler
This makes the logic quite a bit easier to follow, and fixes an issue
with the previous implementatation, where it didn't correctly handle
the case when were multiple long names that collided after being
shortened

Conflicts:
	brut.apktool.smali/util/src/main/java/ds/tree/DuplicateKeyException.java
	brut.apktool.smali/util/src/main/java/ds/tree/RadixTree.java
	brut.apktool.smali/util/src/main/java/ds/tree/RadixTreeImpl.java
	brut.apktool.smali/util/src/main/java/ds/tree/RadixTreeNode.java
	brut.apktool.smali/util/src/main/java/ds/tree/Visitor.java
	brut.apktool.smali/util/src/main/java/ds/tree/VisitorImpl.java
2015-01-21 07:40:52 -06:00
Jeff Smith
12107ecde8 No need to reevaluate 'resource != null' 2015-01-21 07:39:34 -06:00
Jeff Smith
f5765d37c8 Give comment-generating functions more precise naming 2015-01-21 07:39:20 -06:00
Jeff Smith
a4d5d2299b baksmali: Write comments about possible floating-point values
Conflicts:
	brut.apktool.smali/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java
2015-01-21 07:39:11 -06:00
Connor Tumbleson
5afd6f5e69 [skip] adjust path to match apktool structure 2015-01-21 07:33:51 -06:00
Ben Gruver
52482802dc Make the checkPackagePrivateAccess functionality an option
This is only needed for 4.2.0, but not 4.2.1. Both are api 17, so we can't
tie this functionality to an api level.
2015-01-21 07:30:19 -06:00
Connor Tumbleson
89e6b06521 Implement dex entry for non classes.dex files
Conflicts:
	brut.apktool.smali/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java
2015-01-21 07:29:57 -06:00
Ben Gruver
6b6c2c09b6 Fix some generics issues when compiling with java 8 2015-01-21 07:27:17 -06:00
Ben Gruver
07ceb4fc8a Disable doclint for java 8
Conflicts:
	build.gradle
2015-01-21 07:26:53 -06:00
Ben Gruver
026d353fc7 Fix some javadoc issues 2015-01-21 07:25:12 -06:00
Ben Gruver
0153548c30 Expose the various fixed-size item counts in DexBackedDexFile 2015-01-21 07:24:58 -06:00
Ben Gruver
853da5a172 Refactor VariableSizeLookaheadIterator
Previously, when referencing instance fields from readNextItem,
the fields wouldn't have been initialized yet on the first call to
readNextItem
2015-01-21 07:24:47 -06:00
yyjdelete
3d3db44773 Use options.checkPackagePrivateAccess 2015-01-21 07:24:35 -06:00
yyjdelete
b2cf6b1d32 checkPackagePrivateAccess only for API 17(4.2)
Google revert this for compatibility.
see 7284c78e14 for details.

BTW, it seems that is also disabled for late 4.2
2015-01-21 07:24:24 -06:00
Ben Gruver
959133cbf0 Add some additional checks related to instruction size 2015-01-21 07:24:08 -06:00
edwardxwu
fe42130f05 Fixed the bug of not setting the location field of the instruction in addInstruction(i,instruction) method 2015-01-21 07:23:41 -06:00
Ben Gruver
1d597910e2 Improve the readability of the newline normalization stuff for tests 2015-01-21 07:22:40 -06:00
Ben Gruver
5388ed57ba Fix potential NPE in MethodAnalyzer 2015-01-21 07:22:27 -06:00
Ben Gruver
1b0a917a6a Implement implicit method/field references in baksmali 2015-01-21 07:21:57 -06:00
Ben Gruver
2772be8e9d Implement implicit method/field references in smali 2015-01-21 07:21:37 -06:00
Ben Gruver
4801482960 Add missing "break" from switch statement in BuilderClassPool 2015-01-21 07:21:27 -06:00
Ben Gruver
ca13778fe8 Ensure the annotation elements are sorted when written 2015-01-21 07:20:42 -06:00
Ben Gruver
b66bf0500b Improve how method parameter lists are lexed 2015-01-21 07:20:31 -06:00
Ben Gruver
e1742d8547 Clean up some unused/unneeded tokens in smaliParser.g 2015-01-21 07:14:26 -06:00
Ben Gruver
9596513f6f Add support for non-standard invoke-object-init/range instructions 2015-01-21 07:14:14 -06:00
Ben Gruver
83e63dab7a Truncate filenames based on their utf-8 length 2015-01-21 07:13:56 -06:00
Ben Gruver
838b35e477 Fix NPE when using a custom inline method table 2015-01-21 07:13:42 -06:00
Ben Gruver
8aa0f31127 Add new experimental dex rewriter functionality 2015-01-21 07:13:24 -06:00
Ben Gruver
f6f5fecf18 Minor comment fix in MutableMethodImplementation 2015-01-21 07:12:48 -06:00
Connor Tumbleson
81e6af093b Removes general access bit hack
- fixed in aosp: android_libcore/commit/25681be69e19a834b00cfbf54cd99ac13f12b9ff
 - reverts 42f69fd745
 - reverts 47a5eac0b0
 - fixes googlecode issue 744
2015-01-21 07:12:26 -06:00
Connor Tumbleson
e281f81546 [skip] during info message, don't show apk build dir 2015-01-19 07:25:21 -06:00
Connor Tumbleson
20504d1338 Fix improper handling of MNC_ZERO
- add test
 - patch ResConfigFlags
2014-12-30 06:08:23 -06:00
Connor Tumbleson
4ed8d23c57 [skip] update changes for bugs fixed in recent commits 2014-12-27 07:13:39 -06:00
Connor Tumbleson
4882396163 Prevent casting strings that resemble filepaths to ResFileValues
- add testcase
 - adapt changes
 - introduce decodeManifestWithResources which uses attr decoding w/ resources
2014-12-26 08:08:50 -06:00
Connor Tumbleson
5d73e25555 as apks get bigger, our memory footprint grows.
- lets move to 512mb
2014-12-25 14:12:04 -06:00
Connor Tumbleson
499118219e [skip] remove test files after completion 2014-12-25 14:01:34 -06:00
Connor Tumbleson
c91ef3822e [skip] code style updates 2014-12-25 12:21:30 -06:00
Connor Tumbleson
5dfa79934c [tests] adds tests for shared resources & framework tagging 2014-12-25 12:21:12 -06:00
Connor Tumbleson
e9d21f84af Handle apks that utilize Shared Resources
- shared resource is currently hardcoded to pkgId 2 like AOSP
 - merry christmas
2014-12-25 09:56:25 -06:00
Connor Tumbleson
2bd1e595df update internal aapt to API 21 (patched)
- removes implicit adding of version qualifiers (v4, v7, v13, v21)
2014-12-17 18:08:41 -06:00
Connor Tumbleson
b81aacc8de version bump (RC3) 2014-11-26 19:26:21 -06:00
Connor Tumbleson
02b5c7c57b Merge pull request #97 from iBotPeaches/lollipop-support
Lollipop support
2014-11-25 06:21:38 -08:00
Connor Tumbleson
ad70082ebf fix placement of lollipop natural qualifier check 2014-11-21 11:26:18 -06:00
Connor Tumbleson
cd21bd37a8 [tests] add tests for lollipop (API 21) 2014-11-21 11:26:18 -06:00
Connor Tumbleson
0150835bb0 Add support for BCP-47
- Switch to BCP-47 was to move away from hideous java locale toString
 - mnc1 padded to mnc01
 - mnc10 padded to mnc010
2014-11-21 11:26:17 -06:00
Connor Tumbleson
5b3db86e6c [skip] update changes 2014-11-21 11:26:17 -06:00
Connor Tumbleson
554591a339 added support for TYPE_DYNAMIC_REFERENCE 2014-11-21 11:26:17 -06:00