hi Fadden, thanks for the reply I am able to proceed swapMap() function by fixing an endian issue in that function. Fix: pMap->size has to be converted to big-endian before assigning it to count variable.
Now I have another issue in crossVerifyEverything() with "kDexTypeClassDefItem" switch-case. It is becoming increasingly difficult to debug this as this is tightly coupled to dex file-format. I hope I can get some pointers into fixing this issue. Thanks Anand On Fri, Mar 27, 2009 at 4:55 AM, fadden <fad...@android.com> wrote: > > On Mar 26, 9:31 am, Anand Android <android.an...@gmail.com> wrote: > > DexOpt: --- BEGIN 'core.jar' (bootstrap=1) --- > > DexOpt: waiting for verify+opt, pid=2460 > > Continuing optimization > > > (/home/cupcake/out/debug/target/product/eee_701/system/framework/core.jar, > > isb=1, vfy=1, opt=1) > > +++ swapping bytes > > DexOpt: --- END 'core.jar' --- status=0xff00, process failed > [...] > > On debugging i found it is failing at > > '~/cupcake/dalvik/libdex/DexSwapVerify.c:2084' where 'swapMap()' function > is > > failing. > > It should log a specific failure message when something goes wrong. > Line 2084 looks like it's scrounging around in annotations; I think > maybe it should have a LOGE: > > while (size--) { > data = verifyEncodedValue(state, data, crossVerify); > if (data == NULL) { > LOGE("Bogus encoded_array value\n"); > return NULL; > } > } > > If you've got the latest cupcake you should have the checksum > verification enabled (around line 2767), which should ensure that > you're not reading a corrupt file. > > > > --~--~---------~--~----~------------~-------~--~----~ unsubscribe: android-porting+unsubscr...@googlegroups.com website: http://groups.google.com/group/android-porting -~----------~----~----~----~------~----~------~--~---