[X2go-Commits] python-x2go.git - master (branch) updated: 0.1.1.4-236-g406d9c0

X2Go dev team git-admin at x2go.org
Tue May 15 09:40:44 CEST 2012


The branch, master has been updated
       via  406d9c04b562dc27c37ec082a8091aeb6b993fa4 (commit)
      from  91247a4fd865197fa21c2978689ba17c3171644d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 406d9c04b562dc27c37ec082a8091aeb6b993fa4
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date:   Tue May 15 09:40:38 2012 +0200

    Fix control session failure notifications. Show them immediately after the connection broke.

-----------------------------------------------------------------------

Summary of changes:
 debian/changelog |    2 ++
 x2go/client.py   |   29 ++++++++++++++---------------
 2 files changed, 16 insertions(+), 15 deletions(-)

The diff of changes is:
diff --git a/debian/changelog b/debian/changelog
index 14dc935..cabacf7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -123,6 +123,8 @@ python-x2go (0.1.2.0-0~x2go1) UNRELEASED; urgency=low
     - Adapt python-x2go to launching Unity-2d on Ubuntu precise.
     - Ignore X windows with empty title while finding session window..
     - Catch exceptions while calling SSH transport's getpeername() method.
+    - Fix control session failure notifications. Show them immediately after
+      the connection broke.
   * Depend on python-xlib.
 
  -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Sat, 28 Sep 2012 01:44:21 +0100
diff --git a/x2go/client.py b/x2go/client.py
index 749c081..7e81e4b 100644
--- a/x2go/client.py
+++ b/x2go/client.py
@@ -468,7 +468,6 @@ class X2goClient(object):
         # this HOOK has to return either True (accept host connection) or False (deny host conection)
         return True
 
-    def HOOK_on_control_session_death(self, profile_name):
         """\
         HOOK method: called if a control session (server connection) has unexpectedly encountered a failure.
 
@@ -1486,8 +1485,8 @@ class X2goClient(object):
                 return self.session_registry(session_uuid).resume(session_name=session_name)
         except x2go_exceptions.X2goControlSessionException:
             profile_name = self.get_session_profile_name(session_uuid)
-            if self.disconnect_profile(profile_name):
-                self.HOOK_on_control_session_death(profile_name)
+            self.HOOK_on_control_session_death(profile_name)
+            self.disconnect_profile(profile_name)
     __resume_session = resume_session
 
     def suspend_session(self, session_uuid, session_name=None):
@@ -1527,8 +1526,8 @@ class X2goClient(object):
             return self.session_registry(session_uuid).control_session.suspend(session_name=session_name)
         except x2go_exceptions.X2goControlSessionException:
             profile_name = self.get_session_profile_name(session_uuid)
-            if self.disconnect_profile(profile_name):
-                self.HOOK_on_control_session_death(profile_name)
+            self.HOOK_on_control_session_death(profile_name)
+            self.disconnect_profile(profile_name)
     __suspend_session = suspend_session
 
     def terminate_session(self, session_uuid, session_name=None):
@@ -1567,8 +1566,8 @@ class X2goClient(object):
             return self.session_registry(session_uuid).control_session.terminate(session_name=session_name)
         except x2go_exceptions.X2goControlSessionException:
             profile_name = self.get_session_profile_name(session_uuid)
-            if self.disconnect_profile(profile_name):
-                self.HOOK_on_control_session_death(profile_name)
+            self.HOOK_on_control_session_death(profile_name)
+            self.disconnect_profile(profile_name)
     __terminate_session = terminate_session
 
     def get_session_profile_name(self, session_uuid):
@@ -2216,8 +2215,8 @@ class X2goClient(object):
             return self.session_registry(session_uuid).is_alive()
         except x2go_exceptions.X2goControlSessionException:
             profile_name = self.get_session_profile_name(session_uuid)
-            if self.disconnect_profile(profile_name):
-                self.HOOK_on_control_session_death(profile_name)
+            self.HOOK_on_control_session_death(profile_name)
+            self.disconnect_profile(profile_name)
             return False
     __server_is_alive = server_is_alive
 
@@ -2744,8 +2743,8 @@ class X2goClient(object):
             try:
                 self.session_registry.update_status(profile_name=profile_name, session_list=session_list)
             except x2go_exceptions.X2goControlSessionException:
-                if self.disconnect_profile(profile_name):
-                    self.HOOK_on_control_session_death(profile_name)
+                self.HOOK_on_control_session_death(profile_name)
+                self.disconnect_profile(profile_name)
     __update_sessionregistry_status_by_profile_name = update_sessionregistry_status_by_profile_name
 
     def update_sessionregistry_status_by_session_uuid(self, session_uuid):
@@ -2798,8 +2797,8 @@ class X2goClient(object):
             try:
                 self.listsessions_cache.update(profile_name, update_sessions=_update_sessions, update_desktops=_update_desktops, update_mounts=_update_mounts, )
             except x2go_exceptions.X2goControlSessionException:
-                if self.disconnect_profile(profile_name):
-                    self.HOOK_on_control_session_death(profile_name)
+                self.HOOK_on_control_session_death(profile_name)
+                self.disconnect_profile(profile_name)
     __update_cache_by_profile_name = update_cache_by_profile_name
 
     def update_cache_by_session_uuid(self, session_uuid, cache_types=('sessions'), update_sessions=None, update_desktops=None, update_mounts=None):
@@ -2878,8 +2877,8 @@ class X2goClient(object):
         try:
             self.session_registry.register_available_server_sessions(profile_name, session_list=session_list)
         except x2go_exceptions.X2goControlSessionException:
-            if self.disconnect_profile(profile_name):
-                self.HOOK_on_control_session_death(profile_name)
+            self.HOOK_on_control_session_death(profile_name)
+            self.disconnect_profile(profile_name)
     __register_available_server_sessions_by_profile_name = register_available_server_sessions_by_profile_name
 
     def register_available_server_sessions_by_session_uuid(self, session_uuid):


hooks/post-receive
-- 
python-x2go.git (Python X2Go Client API)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "python-x2go.git" (Python X2Go Client API).




More information about the x2go-commits mailing list