From 237c427745feff4c17abb20b1ce3fc98ccd373e6 Mon Sep 17 00:00:00 2001 From: Mike Hiretsky Date: Wed, 21 Jul 2010 17:57:44 +0400 Subject: [PATCH] Change place of detect composite --- pym/cl_datavars.py | 33 +++++++++++++++++++++++++++++++++ pym/cl_fill.py | 37 ++----------------------------------- 2 files changed, 35 insertions(+), 35 deletions(-) diff --git a/pym/cl_datavars.py b/pym/cl_datavars.py index 12169f3..f72764d 100644 --- a/pym/cl_datavars.py +++ b/pym/cl_datavars.py @@ -646,3 +646,36 @@ class glob_attr: if not retCode: return programOut return False + + def get_composite_from_xorgconf(self,chroot="/"): + xorgConfig = os.path.join(chroot, + "etc/X11/xorg.conf") + try: + confLines = open(xorgConfig,"r").readlines() + except: + return None + + flagStartExtensions = False + lineCompositeTmp = "" + lineComposite = "" + for line in confLines: + if flagStartExtensions: + if 'EndSection' in line: + lineComposite = lineCompositeTmp + break + elif 'Section' in line: + break + if 'Option' in line and '"Composite"' in line: + lineCompositeTmp = line + else: + if '"Extensions"' in line and 'Section' in line: + flagStartExtensions = True + if lineComposite: + listOpt = filter(lambda x: x.strip(), lineComposite.split('"')) + if len(listOpt) == 3: + ret = listOpt[2].lower() + if ret in ("on","true","yes","1"): + return "on" + elif ret in ("off","false","no","0"): + return "off" + return None diff --git a/pym/cl_fill.py b/pym/cl_fill.py index e1a9721..2ea9ddd 100644 --- a/pym/cl_fill.py +++ b/pym/cl_fill.py @@ -902,41 +902,8 @@ class fillVars(glob_attr): def get_os_x11_composite(self): """Включен ли композитный режим видеокарты on/off""" - defaultCompositeOn = ["nvidia","intel"] - if self.Get('os_x11_video_drv') in defaultCompositeOn: - defaultComposite = "on" - else: - defaultComposite = "off" - xorgConfig = "/etc/X11/xorg.conf" - try: - confLines = open(xorgConfig,"r").readlines() - except: - return defaultComposite - - flagStartExtensions = False - lineCompositeTmp = "" - lineComposite = "" - for line in confLines: - if flagStartExtensions: - if 'EndSection' in line: - lineComposite = lineCompositeTmp - break - elif 'Section' in line: - break - if 'Option' in line and '"Composite"' in line: - lineCompositeTmp = line - else: - if '"Extensions"' in line and 'Section' in line: - flagStartExtensions = True - if lineComposite: - listOpt = filter(lambda x: x.strip(), lineComposite.split('"')) - if len(listOpt) == 3: - ret = listOpt[2].lower() - if ret in ("on","true","yes","1"): - return "on" - elif ret in ("off","false","no","0"): - return "off" - return defaultComposite + state = self.get_composite_from_xorgconf() + return state or "off" def get_hr_laptop(self): """Если компьютер ноутбук, то его производитель"""