1588 Commits

Author SHA1 Message Date
Ben Gruver
a198b46e20 Fix issue with parameter list parsing
This fixes an issue that was initially introduced in the smalidea branch
2016-02-28 12:15:22 -08:00
Ben Gruver
11d179bfdb Get rid of the default 6 thread maximum thing 2016-02-28 11:22:16 -08:00
Ben Gruver
616a0738dd Fix the release task for smalidea 2016-02-27 20:11:39 -08:00
Ben Gruver
81e0309ed6 Keep the since/until IDEA versions specified in the plugin.xml 2016-02-27 20:06:20 -08:00
Ben Gruver
5a8a2a47b6 Fix an NPE in SmaliPositionManager.createPrepareRequest 2016-02-27 18:32:53 -08:00
Ben Gruver
d018443797 Return an empty list from SmaliClass.getVisibleSignatures()
Don't return null from a @NotNull method, silly.
2016-02-27 17:42:47 -08:00
Ben Gruver
4d8aeebc07 Fix how SmaliPositionManager gets the current class 2016-02-27 17:39:25 -08:00
Ben Gruver
37fbbe8e15 Submit issues to the smalidea-issues repo
Let's not spam the nice people who watch the smali repo. (I'm looking
at you jcase)
2016-02-27 17:39:03 -08:00
Ben Gruver
82f031210e Add support for java inner classes
It's now possible to reference java inner classes based on what their
name would be in smali
2016-02-27 13:00:19 -08:00
Ben Gruver
66892009f5 Fix a possible NPE in SmaliCodeFragmentFactory 2016-02-27 12:51:26 -08:00
Ben Gruver
3bdedd6380 Fix up the sandbox directory for smalidea tests 2016-02-27 12:50:54 -08:00
Ben Gruver
29d714f71f Conditionally add the smalidea project to the root project
The smalidea project is only added when you're actually in the
smalidea directory
2016-02-26 22:09:08 -08:00
Ben Gruver
ff4c85c5e4 Provide better register type information 2016-02-26 21:13:29 -08:00
Ben Gruver
6417e812e1 Refactor ClassPath to take ClassProviders
This allows for a more general mechanism for providing defined classes
2016-02-26 21:13:29 -08:00
Ben Gruver
aebb205aeb Add better support for conditional expressions for breakpoints 2016-02-20 12:04:48 -08:00
Ben Gruver
1df3869a30 Don't add tools.jar when building the idea project files 2016-02-20 12:04:48 -08:00
Ben Gruver
7b387e06c5 Gracefully handle analysis errors 2016-02-20 12:04:47 -08:00
Ben Gruver
5b2943d89b Check for switch offset validity in the MethodAnalyzer 2016-02-20 12:04:47 -08:00
Ben Gruver
6429b3daa9 Clean up the jar naming
The previous naming was interfering with 'gr install' installing the
artifacts locally.
2016-02-20 12:04:47 -08:00
Ben Gruver
4b337cc04d Allow local search scopes when searching class usages 2016-02-20 12:00:05 -08:00
Ben Gruver
f16ea398a1 Don't require an active debugging session when making a code fragment
This is needed, e.g. when editing a conditional statement in the
breakpoint window.
2016-02-20 12:00:05 -08:00
Ben Gruver
92f8ec50c5 Add the ideadirs task for smalidea 2016-02-14 12:53:56 -08:00
Ben Gruver
df4e74e41c Make smalidea a separate gradle/idea project 2016-02-14 12:53:56 -08:00
Ben Gruver
6e788c8a8e Move META-INF/plugin.xml under resources 2016-02-14 12:50:31 -08:00
Ben Gruver
2e7fe1b8fe Fix the tests that require a real jdk 2016-02-14 12:50:31 -08:00
Ben Gruver
327957ae66 Update for new MethodAnalyzer signature 2016-02-14 12:50:31 -08:00
Ben Gruver
1b00e0a155 Add the .tokens files to the binary jar 2016-02-14 12:50:31 -08:00
Ben Gruver
0be7264eb3 Bump gradle up to 2.11 2016-02-14 12:50:31 -08:00
Ben Gruver
5bdb7ee520 Bump the version to 2.1.2 2016-02-14 12:50:31 -08:00
Ben Gruver
8533ab7429 Merge branch 'master' into smalidea 2016-02-13 15:43:37 -08:00
Ben Gruver
b12d4e9ec8 Bump the version number to 2.1.1 2016-01-10 11:24:31 -08:00
Ben Gruver
73bd8ce9d4 Add a speculative fix for unicode filename errors on Mac 2015-12-04 12:00:27 -08:00
Ben Gruver
3e265038f5 Implement support for adding new labels to a MutableMethodImplementation 2015-10-18 13:24:34 -07:00
Ben Gruver
b8e255f389 Add support for 64-bit oat files 2015-10-17 14:47:10 -07:00
Ben Gruver
e202aeede5 Pass in the Opcodes to use for SyntheticAccessorFSM 2015-10-17 13:50:26 -07:00
Ben Gruver
4c66761aea Minor javadoc fix for AnalyzedInstruction.setPostRegisterType 2015-10-17 13:48:54 -07:00
Ben Gruver
da58cc8991 Only use the instance-of/if-eqz type info if we're getting more information
We should only use the type info from an instance-of/if-eqz combo if we're
going from an interface to a class, or going from a class to a subtype
of that class -- otherwise, we're actually losing information.
2015-10-17 13:18:55 -07:00
Ben Gruver
3124e94d4b Add support for static volatile opcodes in OdexedFieldInstructionMapper
This fixes a regression introduced in 2.1
2015-10-16 19:07:50 -07:00
Ben Gruver
37d14becd1 Fix register propagation when overriding a register type from a predecessor 2015-10-14 21:57:23 -07:00
Ben Gruver
398630dde5 Infer the register type based on the result of an instance-of instruction
In oat files, it's possible that a check-cast is removed based on the
register being provably of the type being cast to, based on the result
of an instance-of check.

Supporting this in general would require more sophisticated static analysis
than is currently done. Instead, this adds a special-case specifically
for the case of an instance-of followed immediately by an if-eqz
2015-10-13 21:59:47 -07:00
Ben Gruver
d6b17b9935 Don't add an empty .param annotation when not writing debug info 2015-10-13 18:46:13 -07:00
Ben Gruver
ccf087b0dd Bump up MAX_OAT_VERSION to 71 2015-10-01 22:51:10 -07:00
Ben Gruver
7844089286 Add support for alternate field ordering starting at oat version 67 2015-10-01 22:50:35 -07:00
Ben Gruver
d6043955f5 Fix minor issue in DisassemblyTest 2015-10-01 19:03:23 -07:00
Ben Gruver
ea3fdd7e86 Merge branch 'master' into smalidea 2015-10-01 08:34:21 -07:00
Ben Gruver
a9dcd62b92 Add link to wiki from README.md 2015-09-30 21:09:56 -07:00
Ben Gruver
bec8743c15 Bump the version number to 2.1.0 2015-09-30 20:39:37 -07:00
Ben Gruver
827e2db34d Add support for normalizing virtual methods
This is useful, for example, when comparing the result of deodexing with
the original dex file, to remove the "false" differences caused by the
different potential ways to reference a given virtual method.
2015-09-30 20:36:12 -07:00
Ben Gruver
c8c70ac58e Add support for calculating field offsets for art 2015-09-30 20:36:12 -07:00
Ben Gruver
64785d79a3 Add support for using an oat file as the boot class path 2015-09-30 20:36:12 -07:00