pombreda / smali

Automatically exported from code.google.com/p/smali
0 stars 0 forks source link

Smali-1.1 throwing errors when attempting to re-dex smali files #10

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. java -Xmx512m -jar smali 1.1 /launcher2-smali files/ -o classes.dex
2. java -Xmx512m -jar smali 1.1 /wallpaperpicker-smali files/ -0 
classes.dex
3.

What is the expected output? What do you see instead?

expected output is to generate a new classes.dex for the launcher2.apk & 
wallpaperpicker.apk  from the nexus ROM, instead smali throws loads of 
"no viable alternative to character x" errors 

What version of the product are you using? On what operating system?
smali 1.1, windows 7

Please provide any additional information below.

Original issue reported on code.google.com by Rivera5...@gmail.com on 28 Dec 2009 at 6:59

GoogleCodeExporter commented 9 years ago
Can you show an example of the exact error message, and the corresponding code
snippet from the smali file where the error occured?

Original comment by JesusFre...@gmail.com on 28 Dec 2009 at 7:24

GoogleCodeExporter commented 9 years ago
C:\desktop\picker-smali_files\com\android\wallpaper\livepicker\R.smali[28,58] 
no viable 
alternative at character 'U'

code snippet?:
.class public final Lcom/android/wallpaper/livepicker/R;

Original comment by Rivera5...@gmail.com on 28 Dec 2009 at 8:55

GoogleCodeExporter commented 9 years ago
I need line 28. preferably a few lines above and below line 28.

Original comment by JesusFre...@gmail.com on 29 Dec 2009 at 1:17

GoogleCodeExporter commented 9 years ago
# direct methods
.method public constructor <init>()V
    .registers 1

    .prologue
    .line 10
28.    invoke-direct-empty {p0}, Ljava/lang/Object;-><init>()V

    .line 69
    return-void
.end method

Original comment by Rivera5...@gmail.com on 29 Dec 2009 at 1:33

GoogleCodeExporter commented 9 years ago
invoke-direct-empty is an instruction that only occurs in odex file. You can
disassemble an odex file, but if you don't deodex it (the -x option in 
baksmali),
then you can't re-assemble it. See the "Deodex Instructions" wiki page for
information on how to deodex a file.

Original comment by JesusFre...@gmail.com on 29 Dec 2009 at 3:07