From 5df7bcc6db6bc4274dfd55c9670b33d56492ee8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ole=20Andr=C3=A9=20Vadla=20Ravn=C3=A5s?= Date: Tue, 5 May 2015 20:18:46 +0200 Subject: [PATCH] Fix Module._do_ensure_function() initialization logic --- src/frida/core.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/frida/core.py b/src/frida/core.py index d006351..9966dd4 100644 --- a/src/frida/core.py +++ b/src/frida/core.py @@ -449,11 +449,10 @@ class Module(FunctionContainer): relative_address = int(export["address"], 16) - self.base_address mf = ModuleFunction(self, export["name"], relative_address, True) self._exports.append(mf) + self._functions[relative_address] = mf def _do_ensure_function(self, relative_address): - if self._exports is None: - for mf in self.enumerate_exports(): - self._functions[mf.relative_address] = mf + self.enumerate_exports() mf = self._functions.get(relative_address) if mf is None: mf = ModuleFunction(self, "sub_%x" % relative_address, relative_address, False)