You passed an error into ReadPointerFromMemory. In the cases where you aren't getting what you expect, what does that error say?
Jim > On Sep 16, 2016, at 5:06 PM, Lei Kong via lldb-dev <lldb-dev@lists.llvm.org> > wrote: > > I ran into the error in the subject when running a python script with "script > myfile.myscript()". > > The value addr_t parameter used is 0x0000000001223f68, the following works > fine: > > (lldb) scr > Python Interactive Interpreter. To exit, type 'quit()', 'exit()' or Ctrl-D. > >>> e = lldb.SBError() > >>> ptr = lldb.process.ReadPointerFromMemory(0x0000000001223f68, e) > >>> print ptr > 0 > >>> > > Any suggestion how to further investigate? Thanks. > > myfile.myscript() calls the following function in a loop (iterate through all > vtable symbols), which contains the call ReadPointerFromMemory. > > def dump_vtbl(vtableAddr) : > error = lldb.SBError() > vtableEndAddr = lldb.process.ReadPointerFromMemory(vtableAddr+8, error) > if not error.success : > return False > print "vtable: [%0.16x, %0.16x)" % (vtableAddr, vtableEndAddr) > for addr in range(vtableAddr, vtableEndAddr, 8) : > print "read from address %.016x" % addr > try: > funcAddr = lldb.process.ReadPointerFromMemory(addr, error) > except: > sys.exc_clear() > continue > if not error.success : > continue > > _______________________________________________ > lldb-dev mailing list > lldb-dev@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev _______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev