From 15e44d5b8b0cc77f81f41a2a9f553e2987d5033c Mon Sep 17 00:00:00 2001 From: Ben Gruver Date: Wed, 29 Jan 2014 19:21:32 -0800 Subject: [PATCH] support c++ dalvik in deodexerant --- deodexerant/deodexerant.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/deodexerant/deodexerant.c b/deodexerant/deodexerant.c index 108db76a..e4b89a22 100644 --- a/deodexerant/deodexerant.c +++ b/deodexerant/deodexerant.c @@ -54,6 +54,10 @@ void main(int argc, char **argv) { dvmGetInlineOpsTablePtr dvmGetInlineOpsTable = dlsym(libdvm, "dvmGetInlineOpsTable"); + if (dvmGetInlineOpsTable == NULL) { + dvmGetInlineOpsTable = dlsym(libdvm, "_Z20dvmGetInlineOpsTablev"); + } + if (dvmGetInlineOpsTable == NULL) { printf("Failed to load dvmGetInlineOpsTable\n"); dlclose(libdvm); @@ -62,6 +66,10 @@ void main(int argc, char **argv) { dvmGetInlineOpsTableLengthPtr dvmGetInlineOpsTableLength = dlsym(libdvm, "dvmGetInlineOpsTableLength"); + if (dvmGetInlineOpsTableLength == NULL) { + dvmGetInlineOpsTableLength = dlsym(libdvm, "_Z26dvmGetInlineOpsTableLengthv"); + } + if (dvmGetInlineOpsTableLength == NULL) { printf("Failed to load dvmGetInlineOpsTableLength\n"); dlclose(libdvm);