diff options
author | Brennan Ashton <bashton@brennanashton.com> | 2018-11-14 18:16:58 -0800 |
---|---|---|
committer | Martin Braun <martin.braun@ettus.com> | 2018-11-15 15:44:05 -0800 |
commit | 293708b1cb8bd983cc6a97dd75fa8cb55317095c (patch) | |
tree | aeb3ac0528718e3459309c6021784019c266f205 | |
parent | 46e7260f8984c27ea752bb83715c770a69a4b606 (diff) |
grc: Improve exception handling (bare and unnecessary)
-rw-r--r-- | grc/converter/flow_graph.py | 2 | ||||
-rw-r--r-- | grc/core/blocks/block.py | 2 | ||||
-rw-r--r-- | grc/core/generator/hier_block.py | 7 | ||||
-rw-r--r-- | grc/core/generator/top_block.py | 8 | ||||
-rw-r--r-- | grc/core/params/param.py | 2 | ||||
-rw-r--r-- | grc/gui/Config.py | 8 | ||||
-rw-r--r-- | grc/gui/Dialogs.py | 6 | ||||
-rw-r--r-- | grc/gui/canvas/block.py | 5 |
8 files changed, 19 insertions, 21 deletions
diff --git a/grc/converter/flow_graph.py b/grc/converter/flow_graph.py index 5b8b54e534..1d013b2f19 100644 --- a/grc/converter/flow_graph.py +++ b/grc/converter/flow_graph.py @@ -128,6 +128,6 @@ def _guess_file_format_1(data): try: if any(not has_numeric_port_ids(*con) for con in data['connections']): return 1 - except: + except (TypeError, KeyError): pass return 0 diff --git a/grc/core/blocks/block.py b/grc/core/blocks/block.py index 0cb3f61237..c3502397ec 100644 --- a/grc/core/blocks/block.py +++ b/grc/core/blocks/block.py @@ -144,7 +144,7 @@ class Block(Element): try: if not self.evaluate(expr): self.add_error_message('Assertion "{}" failed.'.format(expr)) - except: + except Exception: self.add_error_message('Assertion "{}" did not evaluate.'.format(expr)) def _validate_generate_mode_compat(self): diff --git a/grc/core/generator/hier_block.py b/grc/core/generator/hier_block.py index cdced796cb..780dee5be3 100644 --- a/grc/core/generator/hier_block.py +++ b/grc/core/generator/hier_block.py @@ -52,10 +52,9 @@ class HierBlockGenerator(TopBlockGenerator): with codecs.open(self.file_path_yml, 'w', encoding='utf-8') as fp: fp.write(data) - try: - os.chmod(self.file_path_yml, self._mode) - except: - pass + + # Windows only supports S_IREAD and S_IWRITE, other flags are ignored + os.chmod(self.file_path_yml, self._mode) def _build_block_n_from_flow_graph_io(self): """ diff --git a/grc/core/generator/top_block.py b/grc/core/generator/top_block.py index 3eae13ff68..b5661762c0 100644 --- a/grc/core/generator/top_block.py +++ b/grc/core/generator/top_block.py @@ -69,10 +69,7 @@ class TopBlockGenerator(object): with codecs.open(filename, 'w', encoding='utf-8') as fp: fp.write(data) if filename == self.file_path: - try: - os.chmod(filename, self._mode) - except: - pass + os.chmod(filename, self._mode) def _build_python_code_from_template(self): """ @@ -172,7 +169,8 @@ class TopBlockGenerator(object): code = block.templates.render('make').replace(block.name, ' ') try: code += block.params['gui_hint'].get_value() # Newer gui markup w/ qtgui - except: + except KeyError: + # No gui hint pass return code diff --git a/grc/core/params/param.py b/grc/core/params/param.py index 3cd22b152d..ce40025228 100644 --- a/grc/core/params/param.py +++ b/grc/core/params/param.py @@ -220,7 +220,7 @@ class Param(Element): value = self.parent_flowgraph.evaluate(expr) if not isinstance(value, str): raise Exception() - except: + except Exception: self._stringify_flag = True value = str(expr) if dtype == '_multiline_python_external': diff --git a/grc/gui/Config.py b/grc/gui/Config.py index 8b9bc70b92..28dd737984 100644 --- a/grc/gui/Config.py +++ b/grc/gui/Config.py @@ -102,9 +102,9 @@ class Config(CoreConfig): raw = self._gr_prefs.get_string('grc', 'canvas_default_size', '1280, 1024') value = tuple(int(x.strip('() ')) for x in raw.split(',')) if len(value) != 2 or not all(300 < x < 4096 for x in value): - raise Exception() + raise ValueError return value - except: + except (ValueError, TypeError): print("Error: invalid 'canvas_default_size' setting.", file=sys.stderr) return Constants.DEFAULT_CANVAS_SIZE_DEFAULT @@ -114,8 +114,8 @@ class Config(CoreConfig): font_size = self._gr_prefs.get_long('grc', 'canvas_font_size', Constants.DEFAULT_FONT_SIZE) if font_size <= 0: - raise Exception() - except: + raise ValueError + except (ValueError, TypeError): font_size = Constants.DEFAULT_FONT_SIZE print("Error: invalid 'canvas_font_size' setting.", file=sys.stderr) diff --git a/grc/gui/Dialogs.py b/grc/gui/Dialogs.py index f58ea78ca2..4e1de3de51 100644 --- a/grc/gui/Dialogs.py +++ b/grc/gui/Dialogs.py @@ -21,7 +21,7 @@ import sys import textwrap from distutils.spawn import find_executable -from gi.repository import Gtk +from gi.repository import Gtk, GLib from . import Utils, Actions, Constants from ..core import Messages @@ -272,8 +272,8 @@ def show_about(parent, config): try: ad.set_logo(Gtk.IconTheme().load_icon('gnuradio-grc', 64, 0)) - except: - pass + except GLib.Error: + log.debug("Failed to set window logo") #ad.set_comments("") ad.set_copyright(config.license.splitlines()[0]) diff --git a/grc/gui/canvas/block.py b/grc/gui/canvas/block.py index 33edf988c2..2f0d057d4f 100644 --- a/grc/gui/canvas/block.py +++ b/grc/gui/canvas/block.py @@ -368,7 +368,7 @@ class Block(CoreBlock, Drawable): new_index = (old_index + direction + len(values)) % len(values) type_param.set_value(values[new_index]) return True - except: + except IndexError: return False def port_controller_modify(self, direction): @@ -394,7 +394,8 @@ class Block(CoreBlock, Drawable): if value > 0: param.set_value(value) changed = True - except: + except ValueError: + # Should we be logging something here pass return changed |