From 8e79a3d1184c8bf1a74de0cd4b8937ed27b47020 Mon Sep 17 00:00:00 2001 From: Kevin Bernhagen Date: Tue, 13 Dec 2016 04:28:48 -0800 Subject: [PATCH] osx: rm dependency on viewer launch script use /usr/bin/open instead of script --- .gitignore | 3 ++- fah/FAHControl.py | 12 +++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 3f8b3d1..bdfbb9a 100644 --- a/.gitignore +++ b/.gitignore @@ -8,7 +8,7 @@ # Build byproducts /build /config.log -/package.txt +/package*.txt /fah/FAHControl_glade.py /fah/Version.py /FAHControl.egg-info @@ -16,6 +16,7 @@ /dist /version.txt /FAHControl*.tar.gz +/fahcontrol*.pkg # Temporary files *~ diff --git a/fah/FAHControl.py b/fah/FAHControl.py index ba23d60..cc58128 100644 --- a/fah/FAHControl.py +++ b/fah/FAHControl.py @@ -1295,6 +1295,9 @@ class FAHControl(SingleAppServer): def viewer_check(self): if self.viewer is not None and self.viewer.poll() is not None: + if self.viewer.returncode and sys.platform == 'darwin': + self.error('Failed to launch viewer:\n\n' + + self.viewer.stderr.read()) self.viewer = None # Viewer exited @@ -1324,6 +1327,9 @@ class FAHControl(SingleAppServer): if not (len(cmd) and len(cmd[0])): cmd = ['FAHViewer'] + if sys.platform == 'darwin': + cmd = ['/usr/bin/open', '-a', cmd[0], '--args'] + cmd[1:] + if fullscreen: cmd.append('--fullscreen') cmd.append('--width=' + width) cmd.append('--height=' + height) @@ -1345,7 +1351,11 @@ class FAHControl(SingleAppServer): if debug: print cmd try: - self.viewer = subprocess.Popen(cmd, cwd = get_home_dir()) + if sys.platform == 'darwin': + self.viewer = subprocess.Popen(cmd, cwd = get_home_dir(), + bufsize = 4096, stderr=subprocess.PIPE) + else: + self.viewer = subprocess.Popen(cmd, cwd = get_home_dir()) except Exception, e: self.error('Failed to launch viewer with command:\n\n' + ' '.join(cmd))