dorneanu / smalisca

Static Code Analysis for Smali files
Other
317 stars 76 forks source link

Output graph file #3

Closed zuBux closed 9 years ago

zuBux commented 9 years ago

Hi,

When the full path of the output file is not provided smalisca assumes that / is being used, which leads to crash when user has no write permissions.

Example

smalisca>dc -c class_name -p ApiCrypt -f png -o test.png Traceback (most recent call last): File "/home/santoku/Tools/.smalienv/bin/smalisca", line 5, in pkg_resources.run_script('smalisca==0.1', 'smalisca') File "/home/santoku/Tools/.smalienv/local/lib/python2.7/site-packages/pkg_resources.py", line 488, in run_script self.require(requires)[0].run_script(script_name, ns) File "/home/santoku/Tools/.smalienv/local/lib/python2.7/site-packages/pkg_resources.py", line 1361, in run_script exec(script_code, namespace, namespace) File "/home/santoku/Tools/.smalienv/local/lib/python2.7/site-packages/smalisca-0.1-py2.7.egg/EGG-INFO/scripts/smalisca", line 68, in

File "/home/santoku/Tools/.smalienv/local/lib/python2.7/site-packages/cement-2.4.0-py2.7.egg/cement/core/foundation.py", line 694, in run self.controller._dispatch() File "/home/santoku/Tools/.smalienv/local/lib/python2.7/site-packages/cement-2.4.0-py2.7.egg/cement/core/controller.py", line 455, in _dispatch return func() File "/home/santoku/Tools/.smalienv/local/lib/python2.7/site-packages/cement-2.4.0-py2.7.egg/cement/core/controller.py", line 461, in _dispatch return func() File "build/bdist.linux-x86_64/egg/smalisca/controller/controller_analyzer.py", line 118, in default File "/usr/lib/python2.7/cmd.py", line 142, in cmdloop stop = self.onecmd(line) File "/usr/lib/python2.7/cmd.py", line 221, in onecmd return func(arg) File "build/bdist.linux-x86_64/egg/smalisca/analysis/analysis_shell.py", line 794, in do_dc File "build/bdist.linux-x86_64/egg/smalisca/modules/module_graph.py", line 184, in write File "build/bdist.linux-x86_64/egg/graphviz/files.py", line 163, in render File "build/bdist.linux-x86_64/egg/graphviz/files.py", line 152, in save IOError: [Errno 13] Permission denied: '/test'

dorneanu commented 9 years ago

Merged.