{"record":{"id":"8f5314194466f4a5","repo":"pxb1988/dex2jar","slug":"can-t-parse-type-list-desc","errorCode":null,"errorMessage":"can't parse type list: ${desc}","messagePattern":"can't parse type list: (.+?)","errorType":"exception","errorClass":"RuntimeException","httpStatus":null,"severity":"error","filePath":"d2j-smali/src/main/java/com/googlecode/d2j/smali/Utils.java","lineNumber":133,"sourceCode":"                        }\n                    }\n                    count++;\n                    list.add(new String(chars, i, count));\n                    i += count;\n                    break;\n                }\n                case 'L': {\n                    int count = 1;\n                    while (chars[i + count] != ';') {\n                        ++count;\n                    }\n                    count++;\n                    list.add(new String(chars, i, count));\n                    i += count;\n                    break;\n                }\n                default:\n                    throw new RuntimeException(\"can't parse type list: \" + desc);\n            }\n        }\n        return list;\n    }\n\n    public static String[] toTypeList(String s) {\n        return listDesc(s).toArray(new String[0]);\n    }\n\n    static public Byte parseByte(String str) {\n        return (byte) parseInt(str.substring(0, str.length() - 1));\n    }\n\n    static public Short parseShort(String str) {\n        return (short) parseInt(str.substring(0, str.length() - 1));\n    }\n\n    static public Long parseLong(String str) {","sourceCodeStart":115,"sourceCodeEnd":151,"githubUrl":"https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/d2j-smali/src/main/java/com/googlecode/d2j/smali/Utils.java#L115-L151","documentation":"Thrown by the default branch of the descriptor parser in listDesc while walking a JNI type descriptor character by character: the current character is not one of 'Z','B','C','S','I','J','F','D','V','[','L', i.e. the descriptor string (typically a method argument list passed via toTypeList) is malformed at that offset. The offending text is included as ${desc}.","triggerScenarios":"Thrown at d2j-smali/src/main/java/com/googlecode/d2j/smali/Utils.java:133 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Inspect the full descriptor string reported in the message and locate the illegal character at the failure offset","Fix the producer of the descriptor — usually a typo in a method signature string such as a missing ';' after an L...; class type or an unbalanced '('","If the input comes from an external file, correct the signature there and re-run the conversion"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"b5bda4fb4935ae8b3869b422454ae3b3896c7bc1","analyzedAt":"2026-09-08T00:44:01.258Z","contentChangedAt":"2026-09-08T00:44:01.258Z","schemaVersion":2},"datasetVersion":"2026-09-16T09:17:16.951Z"}