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

X2Go dev team git-admin at x2go.org
Wed Apr 18 10:09:29 CEST 2012


The branch, master has been updated
       via  393c1297895e723167977505e45df18e4f903b5a (commit)
       via  4982c1319f128dd81cd5da71ecbcf7d73312e3e6 (commit)
      from  29315a21584c684382d2d5eecbe10e6e263f29e3 (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 393c1297895e723167977505e45df18e4f903b5a
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date:   Wed Apr 18 10:09:23 2012 +0200

    Make transitions of master sessions more robust. Only allow local folder sharing for running sessions.

commit 4982c1319f128dd81cd5da71ecbcf7d73312e3e6
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date:   Wed Apr 18 10:08:46 2012 +0200

    If configured X-server display port is already in use, try to detect the next available display number.

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

Summary of changes:
 debian/changelog |    4 ++++
 x2go/session.py  |    8 ++++----
 x2go/xserver.py  |   16 ++++++++++++++++
 3 files changed, 24 insertions(+), 4 deletions(-)

The diff of changes is:
diff --git a/debian/changelog b/debian/changelog
index a8f88d6..1042ea1 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -102,6 +102,10 @@ python-x2go (0.1.2.0-0~x2go1) UNRELEASED; urgency=low
       startup has not yet been completed fully.
     - Use nxproxy-3.5.0.12 when testing Python X2Go applications.
     - Use VcXsrv-1.12.0.1 when testing Python X2Go applications.
+    - If configured X-server display port is already in use, try to detect
+      the next available display number.
+    - Make transitions of master sessions more robust. Only allow local folder sharing for
+      running sessions.
   * Depend on python-xlib.
 
  -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Sat, 28 Sep 2012 01:44:21 +0100
diff --git a/x2go/session.py b/x2go/session.py
index 0201d1a..d3d7d9e 100644
--- a/x2go/session.py
+++ b/x2go/session.py
@@ -488,8 +488,7 @@ class X2goSession(object):
         """
         self.logger('Using session %s as master session for profile %s.' % (self.get_session_name(), self.get_profile_name()), loglevel=log.loglevel_NOTICE)
         self.master_session = True
-        if self.has_terminal_session():
-            self.share_all_local_folders()
+        self.share_all_local_folders()
 
     def unset_master_session(self):
         """\
@@ -1494,7 +1493,6 @@ class X2goSession(object):
                     self.HOOK_mimebox_not_available()
                     self._SUPPORTED_MIMEBOX = False
 
-                self.share_all_local_folders()
 
                 self.virgin = False
                 self.suspended = False
@@ -1502,6 +1500,8 @@ class X2goSession(object):
                 self.terminated = False
                 self.faulty = False
 
+                self.share_all_local_folders()
+
                 self.has_terminal_session() and self.terminal_session.session_info_unprotect()
                 return True
 
@@ -1890,7 +1890,7 @@ class X2goSession(object):
 
         """
         _retval = False
-        if self.has_terminal_session() and self.share_local_folders and not self.faulty:
+        if self.has_terminal_session() and self.share_local_folders and not self.faulty and self.is_running():
             if self._SUPPORTED_FOLDERSHARING and self.is_folder_sharing_available():
                 if self.control_session.get_transport().reverse_tunnels[self.terminal_session.get_session_name()]['sshfs'][1] is not None:
                     _retval = True
diff --git a/x2go/xserver.py b/x2go/xserver.py
index d4a6b95..0ed3476 100644
--- a/x2go/xserver.py
+++ b/x2go/xserver.py
@@ -224,7 +224,23 @@ class X2goXServer(threading.Thread):
         self.xserver_name = xserver_name
         self.xserver_config = xserver_config
         self.hProcess = None
+
         if self.xserver_config.has_key('display'):
+
+            try:
+                _configured_display_no = int(self.xserver_config['display'].split(":")[1].split(".")[0])
+                _xserver_port = _configured_display_no + 6000
+                while utils.detect_unused_port(preferred_port=_xserver_port) != _xserver_port:
+                    _xserver_port += 1
+                _display_no = _xserver_port - 6000
+
+                if _configured_display_no != _display_no:
+                    self.xserver_config['display'] = self.xserver_config['display'].replace(_configured_display_no, _display_no)
+                    self.xserver_config['parameters'] = self.xserver_config['parameters'].replace(_configured_display_no, _display_no)
+
+            except TypeError:
+                pass
+
             self.logger('setting DISPLAY environment variable to %s' % self.xserver_config['display'], loglevel=log.loglevel_NOTICE)
             os.environ.update({'DISPLAY': str(self.xserver_config['display'])})
         threading.Thread.__init__(self)


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