aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortassaron2017-07-05 06:38:36 -0400
committertassaron2017-07-05 06:38:36 -0400
commit52f0f96f16e935e636431b18c855291879fcc0ff (patch)
tree21edbc327acc36f8a741442d330f7443285ed29b /src
parentad4dc052d82c32cadddcc0f3f647d1aafac9f05a (diff)
use decorator for readability
Diffstat (limited to 'src')
-rw-r--r--src/toolkit.py29
1 files changed, 17 insertions, 12 deletions
diff --git a/src/toolkit.py b/src/toolkit.py
index fe752f4..5cfd5ee 100644
--- a/src/toolkit.py
+++ b/src/toolkit.py
@@ -31,22 +31,27 @@ def appendUppercase(lst):
return lst
+def hideCmdWin(func):
+ ''' Stops CMD window from appearing on Windows.
+ Adapted from here: http://code.activestate.com/recipes/409002/
+ '''
+ def decorator(func, commandList, **kwargs):
+ if sys.platform == 'win32':
+ startupinfo = subprocess.STARTUPINFO()
+ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
+ kwargs['startupinfo'] = startupinfo
+ return func(commandList, **kwargs)
+ return func
+
+
+@hideCmdWin
def checkOutput(commandList, **kwargs):
- return _subprocess(subprocess.check_output, commandList, **kwargs)
+ return subprocess.check_output(commandList, **kwargs)
+@hideCmdWin
def openPipe(commandList, **kwargs):
- return _subprocess(subprocess.Popen, commandList, **kwargs)
-
-
-def _subprocess(func, commandList, **kwargs):
- if sys.platform == 'win32':
- # Stop CMD window from appearing on Windows
- # http://code.activestate.com/recipes/409002/
- startupinfo = subprocess.STARTUPINFO()
- startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
- kwargs['startupinfo'] = startupinfo
- return func(commandList, shell=False, **kwargs)
+ return subprocess.Popen(commandList, **kwargs)
def disableWhenEncoding(func):