perf: Restore shell after runs

Currently running the perf tool results into no wm running
afterwards making it hard for the user to get the results from a terminal
and generally does not make it easy for users to run it to gather numbers.

So restore the shell after the test has completed.

https://bugzilla.gnome.org/show_bug.cgi?id=724870
This commit is contained in:
Adel Gadllah 2014-02-21 12:30:40 +01:00
parent e23c2ffecc
commit e37a3fa7e6

View File

@ -99,6 +99,15 @@ def run_shell(perf_output=None):
shell.wait()
return shell.returncode == 0
def restore_shell():
pid = os.fork()
if (pid == 0):
if "MUTTER_WM_CLASS_FILTER" in os.environ:
del os.environ["MUTTER_WM_CLASS_FILTER"]
os.execlp("gnome-shell", "gnome-shell", "--replace")
else:
sys.exit(0)
def upload_performance_report(report_text):
try:
config_home = os.environ['XDG_CONFIG_HOME']
@ -320,6 +329,6 @@ if args:
normal_exit = run_performance_test()
if normal_exit:
sys.exit(0)
restore_shell()
else:
sys.exit(1)