Skip to content

AttributeError: 'NoneType' object has no attribute 'strip' #197

@nateozem

Description

@nateozem

Using lldb v360.99.0 (v4.0.0.1), I'll get the following error:

$ lldb 
An error occurred while loading Voltron:

Traceback (most recent call last):
  File "./lib/python2.7/site-packages/voltron-0.1.7-py2.7.egg/voltron/entry.py", line 99, in <module>
	voltron.command = plugin.command_class(*args)
  File "./lib/python2.7/site-packages/voltron-0.1.7-py2.7.egg/voltron/plugins/debugger/dbg_lldb.py", line 549, in __init__
	self.adaptor.command("script import voltron")
  File "./lib/python2.7/site-packages/voltron-0.1.7-py2.7.egg/voltron/dbg.py", line 82, in inner
	raise e
AttributeError: 'NoneType' object has no attribute 'strip'

Please ensure Voltron is installed correctly per the documentation: https://github.com/snare/voltron/wiki/Installation

lldb info:

$ lldb -vV
lldb-360.99.0

$ lldb -P
/usr/local/Cellar/llvm/4.0.0_1/lib/python2.7/site-packages

voltron:

$ lldb 
(lldb) script
Python Interactive Interpreter. To exit, type 'quit()', 'exit()' or Ctrl-D.
>>> import voltron
>>> print voltron
<module 'voltron' from './lib/python2.7/site-packages/voltron-0.1.7-py2.7.egg/voltron/__init__.pyc'>

I'm sure I've installed things correctly, however I'm using updated version of
lldb from homebrew.

So, would lldb v4.x.x be the issue?

The reason I asked because from the debug log I gathered (shown below), there isn't any conflicts with
lldb and python.

(Pdb) step
> ./lib/python2.7/site-packages/voltron-0.1.7-py2.7.egg/voltron/plugins/debugger/dbg_lldb.py(394)command()
-> res = lldb.SBCommandReturnObject()
(Pdb) pp lldb
<module 'lldb' from '/usr/local/Cellar/llvm/4.0.0_1/lib/python2.7/site-packages/lldb/__init__.pyc'>
(Pdb) n
> ./lib/python2.7/site-packages/voltron-0.1.7-py2.7.egg/voltron/plugins/debugger/dbg_lldb.py(395)command()
-> ci = self.host.GetCommandInterpreter()
(Pdb) pp res
<lldb.SBCommandReturnObject; proxy of <Swig Object of type 'lldb::SBCommandReturnObject *' at 0x11368ec60> >
(Pdb) pp self
<dbg_lldb.LLDBAdaptor object at 0x113a35410>
(Pdb) pp command
'script import voltron'
(Pdb) pp voltron
<module 'voltron' from './lib/python2.7/site-packages/voltron-0.1.7-py2.7.egg/voltron/__init__.pyc'>
(Pdb) list
392                 # for some reason this doesn't work - figure it out
393                 if command:
394                     res = lldb.SBCommandReturnObject()
395                     ci = self.host.GetCommandInterpreter()
396                     ci.HandleCommand(str(command), res, False)
397  ->                 if res.Succeeded():
398                         return res.GetOutput().strip()
399                     else:
400                         raise Exception(res.GetError().strip())
401                 else:
402                     raise Exception("No command specified")
(Pdb) n
> ./lib/python2.7/site-packages/voltron-0.1.7-py2.7.egg/voltron/plugins/debugger/dbg_lldb.py(398)command()
-> return res.GetOutput().strip()
(Pdb) list
393                 if command:
394                     res = lldb.SBCommandReturnObject()
395                     ci = self.host.GetCommandInterpreter()
396                     ci.HandleCommand(str(command), res, False)
397                     if res.Succeeded():
398  ->                     return res.GetOutput().strip()
399                     else:
400                         raise Exception(res.GetError().strip())
401                 else:
402                     raise Exception("No command specified")
403
(Pdb) n
AttributeError: "'NoneType' object has no attribute 'strip'"
> ./lib/python2.7/site-packages/voltron-0.1.7-py2.7.egg/voltron/plugins/debugger/dbg_lldb.py(398)command()
-> return res.GetOutput().strip()

Any good idea to resolve this? I wouldn't mind digging into the issue.

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