From 7ee60670f9f8f01004875612852bd01e0332fc55 Mon Sep 17 00:00:00 2001 From: Arnaud Diederen Date: Mon, 13 Sep 2021 08:05:30 +0200 Subject: [PATCH] Backported fixes --- out_of_tree/parsed_notifications.zip | Bin 4371142 -> 4371142 bytes pywraps/py_hexrays.py | 2 +- release_api_contents2.txt | 4 --- release_api_contents3.txt | 4 --- release_pydoc_injections2.txt | 38 ++------------------------- release_pydoc_injections3.txt | 38 ++------------------------- swig/funcs.i | 6 +++++ tools/deploy/header.i.in | 23 ++++++++++++++++ 8 files changed, 34 insertions(+), 81 deletions(-) diff --git a/out_of_tree/parsed_notifications.zip b/out_of_tree/parsed_notifications.zip index ee54bd78b91188163e58ef5bbad4c9304bdcc01e..855dfccd2f76fd8d596c453ff3f99e7fd1b64a0f 100644 GIT binary patch delta 11112 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 diff --git a/pywraps/py_hexrays.py b/pywraps/py_hexrays.py index 0931876..01130b3 100644 --- a/pywraps/py_hexrays.py +++ b/pywraps/py_hexrays.py @@ -157,7 +157,7 @@ def cinsn_details(self): cinsn_t.details = property(cinsn_details) cfuncptr_t.__str__ = lambda self: str(self.__deref__()) -cfuncptr_t.__eq__ = lambda self, other: self.__ptrval__() == other.__ptrval__() +cfuncptr_t.__eq__ = lambda self, other: self.__ptrval__() == other.__ptrval__() if isinstance(other, cfuncptr_t) else False import ida_typeinf def cfunc_type(self): diff --git a/release_api_contents2.txt b/release_api_contents2.txt index 5a6a13b..c70f6fc 100644 --- a/release_api_contents2.txt +++ b/release_api_contents2.txt @@ -3737,10 +3737,6 @@ 'func_contains', 'func_does_return', 'func_has_stkframe_hole', - 'func_item_iterator_decode_preceding_insn', - 'func_item_iterator_decode_prev_insn', - 'func_item_iterator_next', - 'func_item_iterator_prev', 'func_item_iterator_t___next__', 'func_item_iterator_t_chunk', 'func_item_iterator_t_current', diff --git a/release_api_contents3.txt b/release_api_contents3.txt index 5e52274..f01ec93 100644 --- a/release_api_contents3.txt +++ b/release_api_contents3.txt @@ -3737,10 +3737,6 @@ 'func_contains', 'func_does_return', 'func_has_stkframe_hole', - 'func_item_iterator_decode_preceding_insn', - 'func_item_iterator_decode_prev_insn', - 'func_item_iterator_next', - 'func_item_iterator_prev', 'func_item_iterator_t___next__', 'func_item_iterator_t_chunk', 'func_item_iterator_t_current', diff --git a/release_pydoc_injections2.txt b/release_pydoc_injections2.txt index 6f31aea..ffbcb6f 100644 --- a/release_pydoc_injections2.txt +++ b/release_pydoc_injections2.txt @@ -12664,38 +12664,6 @@ func_does_return(*args) func_does_return(callee) -> bool @param callee (C++: ea_t) -Help on function func_item_iterator_decode_preceding_insn in module ida_funcs: - -func_item_iterator_decode_preceding_insn(*args) - func_item_iterator_decode_preceding_insn(fii, visited, p_farref, out) -> bool - fii: func_item_iterator_t * - visited: eavec_t * - p_farref: bool * - out: insn_t * - -Help on function func_item_iterator_decode_prev_insn in module ida_funcs: - -func_item_iterator_decode_prev_insn(*args) - func_item_iterator_decode_prev_insn(fii, out) -> bool - fii: func_item_iterator_t * - out: insn_t * - -Help on function func_item_iterator_next in module ida_funcs: - -func_item_iterator_next(*args) - func_item_iterator_next(fii, testf, ud) -> bool - fii: func_item_iterator_t * - testf: testf_t * - ud: void * - -Help on function func_item_iterator_prev in module ida_funcs: - -func_item_iterator_prev(*args) - func_item_iterator_prev(fii, testf, ud) -> bool - fii: func_item_iterator_t * - testf: testf_t * - ud: void * - Help on class func_item_iterator_t in module ida_funcs: class func_item_iterator_t(__builtin__.object) @@ -12709,9 +12677,8 @@ class func_item_iterator_t(__builtin__.object) | _ea: ea_t | | __next__(self, *args) - | __next__(self, func, ud) -> bool + | __next__(self, func) -> bool | func: testf_t * - | ud: void * | | __repr__ = _swig_repr(self) | @@ -12755,9 +12722,8 @@ class func_item_iterator_t(__builtin__.object) | next_not_tail(self) -> bool | | prev(self, *args) - | prev(self, func, ud) -> bool + | prev(self, func) -> bool | @param func (C++: testf_t *) - | @param ud (C++: void *) | | prev_addr(self, *args) | prev_addr(self) -> bool diff --git a/release_pydoc_injections3.txt b/release_pydoc_injections3.txt index edd7234..5c17042 100644 --- a/release_pydoc_injections3.txt +++ b/release_pydoc_injections3.txt @@ -12600,38 +12600,6 @@ func_does_return(*args) -> 'bool' func_does_return(callee) -> bool @param callee (C++: ea_t) -Help on function func_item_iterator_decode_preceding_insn in module ida_funcs: - -func_item_iterator_decode_preceding_insn(*args) -> 'bool' - func_item_iterator_decode_preceding_insn(fii, visited, p_farref, out) -> bool - fii: func_item_iterator_t * - visited: eavec_t * - p_farref: bool * - out: insn_t * - -Help on function func_item_iterator_decode_prev_insn in module ida_funcs: - -func_item_iterator_decode_prev_insn(*args) -> 'bool' - func_item_iterator_decode_prev_insn(fii, out) -> bool - fii: func_item_iterator_t * - out: insn_t * - -Help on function func_item_iterator_next in module ida_funcs: - -func_item_iterator_next(*args) -> 'bool' - func_item_iterator_next(fii, testf, ud) -> bool - fii: func_item_iterator_t * - testf: testf_t * - ud: void * - -Help on function func_item_iterator_prev in module ida_funcs: - -func_item_iterator_prev(*args) -> 'bool' - func_item_iterator_prev(fii, testf, ud) -> bool - fii: func_item_iterator_t * - testf: testf_t * - ud: void * - Help on class func_item_iterator_t in module ida_funcs: class func_item_iterator_t(builtins.object) @@ -12645,9 +12613,8 @@ class func_item_iterator_t(builtins.object) | _ea: ea_t | | __next__(self, *args) -> 'bool' - | __next__(self, func, ud) -> bool + | __next__(self, func) -> bool | func: testf_t * - | ud: void * | | __repr__ = _swig_repr(self) | @@ -12694,9 +12661,8 @@ class func_item_iterator_t(builtins.object) | next_not_tail(self) -> bool | | prev(self, *args) -> 'bool' - | prev(self, func, ud) -> bool + | prev(self, func) -> bool | @param func (C++: testf_t *) - | @param ud (C++: void *) | | prev_addr(self, *args) -> 'bool' | prev_addr(self) -> bool diff --git a/swig/funcs.i b/swig/funcs.i index b7b2e05..01ae82b 100644 --- a/swig/funcs.i +++ b/swig/funcs.i @@ -29,6 +29,12 @@ %template (dyn_ea_array) dynamic_wrapped_array_t; %template (dyn_regarg_array) dynamic_wrapped_array_t; +%ignore func_item_iterator_next; +%ignore func_item_iterator_prev; +%ignore func_item_iterator_decode_prev_insn; +%ignore func_item_iterator_decode_preceding_insn; +%ignore func_item_iterator_succ; + %extend func_t { dynamic_wrapped_array_t __get_points__() diff --git a/tools/deploy/header.i.in b/tools/deploy/header.i.in index 07e8842..50946c1 100644 --- a/tools/deploy/header.i.in +++ b/tools/deploy/header.i.in @@ -1828,6 +1828,29 @@ ${NONNULL_TYPEMAPS} $result = iobuf; } +%fragment("call_py_testf_t", "header") +{ + bool call_py_testf_t(flags_t flags, void *ud) + { + PYW_GIL_CHECK_LOCKED_SCOPE(); + PyObject *py_callable = (PyObject *) ud; + QASSERT(0, PyCallable_Check(py_callable)); + newref_t py_flags(PyLong_FromUnsignedLong(flags)); + newref_t result(PyObject_CallFunctionObjArgs(py_callable, py_flags.o, nullptr)); + return result != nullptr && PyObject_IsTrue(result.o); + } +} + +%typemap(in, fragment="call_py_testf_t") (testf_t *func, void *ud) +{ + // %typemap(in, fragment="call_py_testf_t") (testf_t *func, void *ud) + if ( !PyCallable_Check($input) ) + SWIG_exception_fail( + SWIG_TypeError, + "in method '" "$symname" "', argument " "$argnum"" of type 'callable'"); + $1 = call_py_testf_t; + $2 = $input; +} #endif // __HEADER_I__ // END: auto-inserted header