mirror of
https://github.com/morluto/rea.git
synced 2026-11-13 10:12:50 +00:00
fix(android): preserve binary class selectors across metadata calls
This commit is contained in:
1 parent
e3a6ce40f5
commit
8d72e2d75e
11 files changed
+232
-10
No files matched your search
@@ -91,7 +91,10 @@ const classSummary = async (
|
||||
{ cause: summary.error },
|
||||
);
|
||||
const value = summary.data;
|
||||
if (value.full_name !== request.input.class_name)
|
||||
if (
|
||||
value.full_name !== request.input.class_name &&
|
||||
value.raw_name !== request.input.class_name
|
||||
)
|
||||
inputFailure(
|
||||
request,
|
||||
"class_name",
|
||||
@@ -233,7 +236,7 @@ const inspectMethod = async (
|
||||
);
|
||||
const body = jadxMethodSchema.parse(
|
||||
await tools.json("get_method_body", {
|
||||
class_name: summary.full_name,
|
||||
class_name: request.input.class_name,
|
||||
method_name: request.input.method_name,
|
||||
overload_index: index,
|
||||
smali_fallback: true,
|
||||
@@ -327,7 +330,7 @@ const traceReferences = async (
|
||||
await tools.json(
|
||||
methodName === undefined ? "get_xrefs_to_class" : "get_xrefs_to_method",
|
||||
{
|
||||
class_name: summary.full_name,
|
||||
class_name: request.input.class_name,
|
||||
...(methodName === undefined
|
||||
? {}
|
||||
: { method_name: methodName, overload_index: index }),
|
||||
|
||||
@@ -80,7 +80,8 @@ export const parseJadxClassPage = (value: JsonValue): JadxClassPage => {
|
||||
};
|
||||
|
||||
export const jadxClassSchema = z.object({
|
||||
full_name: z.string(),
|
||||
full_name: z.string().min(1),
|
||||
raw_name: z.string().min(1),
|
||||
name: z.string(),
|
||||
method_count: count,
|
||||
field_count: count,
|
||||
|
||||
@@ -9,7 +9,7 @@ export const JADX_RELEASE = Object.freeze({
|
||||
/** Identity of REA's metadata bridge, distinct from the producing engine. */
|
||||
export const JADX_BRIDGE_IDENTITY = Object.freeze({
|
||||
name: "rea-jadx-bridge",
|
||||
version: "5",
|
||||
version: "6",
|
||||
});
|
||||
|
||||
/** Remediation when `REA_JADX_MCP_JAR` is missing or not an absolute path. */
|
||||
|
||||
Reference in new issue
Block a user