Skip to content

在处理一些较大的函数时会出现 超过最大递归数量限制问题 #1

@lailuping

Description

@lailuping
[Default] Traceback (most recent call last):
[Default]   File "C:\Users\admin\AppData\Local\Vector35\BinaryNinja\plugins\..\python\binaryninja\workflow.py", line 225, in _action
[Default]     self.action(AnalysisContext(ac))
[Default]   File "C:\Users\admin\AppData\Roaming\Binary Ninja\plugins\MikuCffHelper\mikuWorkflow.py", line 33, in workflow_patch_mlil
[Default]     pass_clear(analysis_context)
[Default]   File "C:\Users\admin\AppData\Roaming\Binary Ninja\plugins\MikuCffHelper\passes\mid\clearPass.py", line 470, in pass_clear
[Default]     pass_clear_goto(analysis_context)
[Default]   File "C:\Users\admin\AppData\Roaming\Binary Ninja\plugins\MikuCffHelper\passes\mid\clearPass.py", line 158, in pass_clear_goto
[Default]     final_target_instr = optimize_goto(goto_instr)
[Default]   File "C:\Users\admin\AppData\Roaming\Binary Ninja\plugins\MikuCffHelper\passes\mid\clearPass.py", line 148, in optimize_goto
[Default]     final_target = optimize_goto(target_instr)
[Default]   File "C:\Users\admin\AppData\Roaming\Binary Ninja\plugins\MikuCffHelper\passes\mid\clearPass.py", line 148, in optimize_goto
[Default]     final_target = optimize_goto(target_instr)
[Default]   File "C:\Users\admin\AppData\Roaming\Binary Ninja\plugins\MikuCffHelper\passes\mid\clearPass.py", line 148, in optimize_goto
[Default]     final_target = optimize_goto(target_instr)
[Default]   [Previous line repeated 984 more times]
[Default]   File "C:\Users\admin\AppData\Roaming\Binary Ninja\plugins\MikuCffHelper\passes\mid\clearPass.py", line 145, in optimize_goto
[Default]     target_instr = mlil[goto_instr.dest]
[Default]   File "C:\Users\admin\AppData\Local\Vector35\BinaryNinja\plugins\..\python\binaryninja\mediumlevelil.py", line 3378, in __getitem__
[Default]     if i < -len(self) or i >= len(self):
[Default]   File "C:\Users\admin\AppData\Local\Vector35\BinaryNinja\plugins\..\python\binaryninja\mediumlevelil.py", line 3358, in __len__
[Default]     return int(core.BNGetMediumLevelILInstructionCount(self.handle))
[Default]   File "C:\Users\admin\AppData\Local\Vector35\BinaryNinja\plugins\..\python\binaryninja\_binaryninjacore.py", line 37514, in BNGetMediumLevelILInstructionCount
[Default]     return _BNGetMediumLevelILInstructionCount(func)
[Default] ctypes.ArgumentError: argument 1: RecursionError: maximum recursion depth exceeded while calling a Python object

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions