From c157039b50d8a3cf7804419f8088a92ed51e033a Mon Sep 17 00:00:00 2001 From: Oleksii Shevchuk Date: Sun, 21 May 2017 22:55:31 +0300 Subject: [PATCH] Make display module compatible to all systems which supports .environ() --- pupy/modules/display.py | 2 +- pupy/packages/{linux => posix}/all/display.py | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) rename pupy/packages/{linux => posix}/all/display.py (98%) diff --git a/pupy/modules/display.py b/pupy/modules/display.py index c36a4ecc..b6b9b49f 100644 --- a/pupy/modules/display.py +++ b/pupy/modules/display.py @@ -4,7 +4,7 @@ from pupylib.utils.rpyc_utils import obtain __class_name__="Display" -@config(compat="linux", cat="admin") +@config(compat="posix", cat="admin") class Display(PupyModule): """ Set display variable """ diff --git a/pupy/packages/linux/all/display.py b/pupy/packages/posix/all/display.py similarity index 98% rename from pupy/packages/linux/all/display.py rename to pupy/packages/posix/all/display.py index 2d369049..02421a04 100644 --- a/pupy/packages/linux/all/display.py +++ b/pupy/packages/posix/all/display.py @@ -93,7 +93,11 @@ def guess_displays(): userinfos = {} for process in psutil.process_iter(): - info = process.as_dict(['username', 'environ']) + try: + info = process.as_dict(['username', 'environ']) + except: + continue + if info['username'] and info['environ']: if not 'DISPLAY' in info['environ']: continue