1. 23 Jan, 2014 1 commit
  2. 16 Jan, 2013 1 commit
  3. 09 Mar, 2011 1 commit
    • Colin Walters's avatar
      gsm-process-helper: Give useful error data · c0840a76
      Colin Walters authored
      In order for engineers to be able to extract why a tool
      like gnome-session-check-accelerated failed, we should print
      something to ~/.xsession-errors.
      
      gsm_process_helper() only returned the exit code, unless the process
      was killed by a signal, in which case it returned -1.  However
      the only consumer of the code never checked the exit code, just
      success.
      
      So fix this by having gsm_process_helper return a normal
      gboolean/GError pair.  As part of this, clean up the code so that it
      also handles the WIFSIGNALED and WIFSTOPPED cases (See "man 2 waitpid").
      
      Also, the exit_child_simple() function was lame; we don't
      need to call g_spawn_close_pid() on Unix, so don't do it.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=643880
      c0840a76
  4. 29 Nov, 2010 1 commit
    • Vincent Untz's avatar
      gsm: Make it possible for a .session file to define a fallback session · 8e6713f1
      Vincent Untz authored
      Two new keys are introduced: IsRunnableHelper and FallbackSession.
      
      The first one defines a helper that is run to know if the session can be
      used (only if the helper returns 0). The second defines the fallback
      session to use if the helper doesn't return 0.
      
      The helper cannot run for more than 500 ms.
      
      There is a test program to make sure that our helper process management
      works okay.
      8e6713f1
  5. 24 Mar, 2009 1 commit
    • Vincent Untz's avatar
      Rework deeply the code that writes the saved session to desktop files: we · 3e346957
      Vincent Untz authored
      2009-03-24  Vincent Untz  <vuntz@gnome.org>
      
      	Rework deeply the code that writes the saved session to desktop files:
      	we now properly discard a client when removing it; we also make sure we
      	save the current session before we completely remove the previously
      	saved session (to be on the safe side).
      	Note that we only discard a client when the new saved session doesn't
      	use the same discard command: for example, when metacity saves its
      	state, it will reuse the same discard command and so we can't discard
      	the old metacity client (it would discard the new client).
      
      	* gnome-session/gsm-util.[ch]: (gsm_util_get_empty_tmp_session_dir):
      	new function to get a temporary directory where to save the new
      	session, while we still keep the previously saved session. It also
      	makes sure the directory is empty.
      	* gnome-session/gsm-session-save.[ch]: (save_one_client): update to
      	make sure we remember the discard command from the client.
      	(gsm_session_save): rework to first save the session in the temporary
      	directory (and remember the discard commands from the saved clients),
      	and then clear the old session. We finish by renaming the temporary
      	directory to its final name.
      	(gsm_session_clear_one_client): new, to properly clear one client from
      	a saved session. We unlink the desktop file, but also run the discard
      	command if it's not used by any other client from the newly saved
      	session.
      	(gsm_session_clear_saved_session): change to clear a saved session in a
      	specified directory, and use gsm_session_clear_one_client() instead of
      	just unlinking the desktop file. Also add missing g_dir_close().
      
      svn path=/trunk/; revision=5355
      3e346957
  6. 24 Feb, 2009 1 commit
  7. 30 Jul, 2008 1 commit
  8. 24 Mar, 2008 1 commit
  9. 16 Aug, 2004 1 commit
    • Mark McLoughlin's avatar
      add gsm-remote-desktop.[ch]. · e117920b
      Mark McLoughlin authored
      2004-08-16  Mark McLoughlin  <mark@skynet.ie>
      
              * Makefile.am: add gsm-remote-desktop.[ch].
      
              * gsm-remote-desktop.[ch]: add support for activating
              and re-spawning the remote desktop server based on the
              /desktop/gnome/remote_access/enabled key.
      
              * main.c: (main): use it.
      e117920b