Ben Gruver
f1f00f9f6e
Initialize ClassDef index to -1 instead of 0 in DexPool
2013-06-01 13:41:53 -07:00
Ben Gruver
2973f7a4af
Fix issue in DexPool with blank parameter annotations
2013-06-01 13:06:04 -07:00
Ben Gruver
9ed12bac38
Add a common superclass for Annotation and AnnotationEncodedValue
2013-05-28 11:06:57 -07:00
Ben Gruver
13705697c2
Clean up how the classes are sorted before being disassembled
2013-05-18 17:36:25 -07:00
Ben Gruver
8987784d7d
Update version to 2.0b4
2013-05-12 21:00:17 -07:00
Ben Gruver
0a7f00ccb1
Use Iterable<DexFile> instead of DexFile[] in ClassPath constructor
2013-05-12 20:59:50 -07:00
Ben Gruver
74436bdd2f
Fix issues with initialization of bootClassPath and inlineResolver
2013-05-12 20:55:10 -07:00
Ben Gruver
60ab9b199c
Update version to 2.0b3
2013-05-12 12:40:16 -07:00
Ben Gruver
dea5f8d544
Exit with non-zero status if any error occurred while running baksmali
2013-05-12 12:32:08 -07:00
Ben Gruver
dd77ba20f4
Git rid of some warnings in smali's main.java
2013-05-12 12:31:31 -07:00
Ben Gruver
7e25c35df7
Make baksmali thread safe, and add -j option
2013-05-12 12:31:24 -07:00
Ben Gruver
4b171afedb
Misc baksmali cleanup
2013-05-11 13:37:19 -07:00
Ben Gruver
0e103007d1
Update revision to 2.0b2
2013-05-07 19:40:21 -07:00
Ben Gruver
ec1348b46d
Allow vtable lookups of Object methods for a class that can't be fully resolved
2013-05-07 19:38:38 -07:00
Ben Gruver
4ee6056b23
Remove unnecessary TODO
2013-05-07 18:50:57 -07:00
Ben Gruver
f60061e0e7
Update version to 2.0b1
2013-05-07 00:05:47 -07:00
Ben Gruver
2a91095e8c
Fix up proguard configuration
2013-05-07 00:05:34 -07:00
Ben Gruver
a2069cd866
Fix issue with deodexing invoke-virtual-quick/range
2013-05-06 23:57:35 -07:00
Ben Gruver
9743f4de0c
Deodex an invoke-object-init/range as a non-range invoke-virtual when possible
2013-05-06 23:57:09 -07:00
Ben Gruver
94565fa09e
Don't replace virtual methods with interface methods in the vtable
2013-05-06 23:56:20 -07:00
Ben Gruver
a7f2135b2f
Factor out repeated calls to getVtable() in getMethodByVtableIndex
2013-05-06 23:55:51 -07:00
Ben Gruver
86112a840f
Add some java docs for the getInterface methods
2013-05-06 22:07:55 -07:00
Ben Gruver
fad4d1a1a9
Sort the instance fields and use List<Field> rather than Field[]
2013-05-06 22:07:49 -07:00
Ben Gruver
5b69a5f3a5
Merge remote-tracking branch 'izzy_github/deodex2' into dexlib_redesign
...
Conflicts:
dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassPath.java
2013-05-06 21:13:55 -07:00
Izzat Bahadirov
363af0a52b
Using newer API getInstanceFields() instead of getFields() + filtering.
2013-05-06 21:07:45 -04:00
Izzat Bahadirov
490a8b2cd0
Another @Nonnull.
2013-05-06 21:02:31 -04:00
Izzat Bahadirov
3aa6e2d4fa
Using Predicates.notNull() to filter for direct interfaces.
2013-05-06 20:59:43 -04:00
Izzat Bahadirov
0ac9242368
More @Nonnull's.
2013-05-06 15:21:49 -04:00
Izzat Bahadirov
b16caa690d
More elegant way of getting direct interfaces, now using FluentIterable.
2013-05-06 14:46:59 -04:00
Izzat Bahadirov
4147960f6e
Propagating interfacesFullyResolved from the parent.
2013-05-06 14:26:53 -04:00
Ben Gruver
a22cdb820a
Remove extraneous fields in Opcode
2013-05-05 18:25:47 -07:00
Ben Gruver
d54761778b
Fix issue when writing parameter annotations
2013-05-03 21:02:52 -07:00
Ben Gruver
05201785fe
Clean up some more TODOs
2013-05-03 21:02:39 -07:00
Ben Gruver
d38f3a7983
Fix up line number handling to be unsigned int safe
2013-05-03 19:35:47 -07:00
Izzat Bahadirov
9d8cf0d67c
Added self (if interface) and super class interfaces to the interface table.
2013-05-03 16:16:23 -04:00
Izzat Bahadirov
063862d44c
Propagating interfaceFullyResolved flag from parent to child interfaces.
2013-05-02 17:15:09 -04:00
Izzat Bahadirov
d3ac72fd67
Introduced getInterfacesFull() method to ensure that all interfaces are resolved when creating a vtable.
2013-05-01 17:58:58 -04:00
Izzat Bahadirov
89b28308db
Throwing UnresolvedClassException if interfaces weren't fully resolved.
2013-05-01 17:35:31 -04:00
Ben Gruver
6fc32629c2
Look up ClassDefs in ClassPath using a hashmap
2013-04-30 21:57:13 -07:00
Ben Gruver
6893c660a3
Remove the spurious logging of classpath file names in ClassPath
2013-04-30 21:57:13 -07:00
Ben Gruver
936cc551f7
Clean up some TODOs
2013-04-30 21:57:08 -07:00
Ben Gruver
d8d16fd844
Get rid of the unneeded classDataOffset in DexBackedClassDef
2013-04-30 21:40:36 -07:00
Ben Gruver
df8e480211
Write the correct header version based on the api level
2013-04-30 20:43:57 -07:00
Ben Gruver
4c431a7ce7
Add multi-threading support for smali
2013-04-30 01:05:16 -07:00
Ben Gruver
03a4ffa1f4
Delete some unneeded TODOs
2013-04-29 23:49:55 -07:00
Ben Gruver
894327c7ed
Clean up smali's main class a bit
2013-04-29 23:05:32 -07:00
Ben Gruver
42627b850c
Add new DexBuilder interface
...
This is a different "front-end" for the existing writer functionality that
is meant to be a more memory efficient method for building a new dex file
from scratch
2013-04-29 23:05:05 -07:00
Ben Gruver
1726f028a8
Get rid of the annotation set ref list pool
2013-04-29 20:10:54 -07:00
Ben Gruver
fbdc6cb9cb
Clean up how the annotation directory items are written
2013-04-29 20:10:54 -07:00
Ben Gruver
816e793f81
Tweak to the numSectionItems field naming in DexWriter
2013-04-29 20:10:54 -07:00