Hello community, here is the log from the commit of package xrdp checked in at Thu Nov 20 16:36:26 CET 2008. -------- --- xrdp/xrdp.changes 2008-11-12 22:13:34.000000000 +0100 +++ /mounts/work_src_done/STABLE/xrdp/xrdp.changes 2008-11-18 22:48:56.000000000 +0100 @@ -1,0 +2,5 @@ +Tue Nov 18 16:37:57 EST 2008 - davidr@novell.com + +- Fix initial screen resolution. + +------------------------------------------------------------------- calling whatdependson for head-i586 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xrdp.spec ++++++ --- /var/tmp/diff_new_pack.Y17214/_old 2008-11-20 16:35:47.000000000 +0100 +++ /var/tmp/diff_new_pack.Y17214/_new 2008-11-20 16:35:47.000000000 +0100 @@ -20,7 +20,7 @@ Name: xrdp Version: 0.4.1 -Release: 14 +Release: 15 License: GPL v2 or later Requires: dbus-1 xorg-x11-server-dmx xorg-x11-server-rdp BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -90,6 +90,8 @@ %config(noreplace) %{_sysconfdir}/pam.d/xrdp-sesman %changelog +* Tue Nov 18 2008 davidr@novell.com +- Fix initial screen resolution. * Wed Nov 12 2008 davidr@novell.com - Fix X server startup issue. * Avoid using unix domain socket files to determine the ++++++ xrdp-NOMAD.diff ++++++ --- /var/tmp/diff_new_pack.Y17214/_old 2008-11-20 16:35:47.000000000 +0100 +++ /var/tmp/diff_new_pack.Y17214/_new 2008-11-20 16:35:47.000000000 +0100 @@ -2353,7 +2353,7 @@ +param6=-- +param7=/usr/bin/Xfake diff --git a/sesman/session.c b/sesman/session.c -index 54e02ad..03b62af 100644 +index 54e02ad..8c21b07 100644 --- a/sesman/session.c +++ b/sesman/session.c @@ -29,7 +29,14 @@ @@ -2753,7 +2753,7 @@ /*THREAD-FIX unlock chain*/ lock_chain_release(); -@@ -222,193 +464,303 @@ for user %s denied", username); +@@ -222,193 +464,346 @@ for user %s denied", username); return 0; } @@ -3006,18 +3006,7 @@ + /* should not get here */ + log_message(&(g_cfg->log), LOG_LEVEL_ALWAYS, "error starting X server - user %s - pid %d", + username, g_getpid()); - -- /* logging parameters */ -- /* no problem calling strerror for thread safety: other threads are blocked */ -- log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, "errno: %d, description: %s", errno, g_get_strerror()); -- log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, "execve parameter list: %d", (xserver_params)->count); -- -- for (i=0; i<(xserver_params->count); i++) -- { -- log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, " argv[%d] = %s", i, (char*)list_get_item(xserver_params, i)); -- } -- list_delete(xserver_params); -- g_exit(1); ++ + /* logging parameters */ + /* no problem calling strerror for thread safety: other threads are blocked */ + log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, "errno: %d, description: %s", errno, g_get_strerror()); @@ -3026,8 +3015,7 @@ + for (i=0; i<(xserver_params->count); i++) + { + log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, " argv[%d] = %s", i, (char*)list_get_item(xserver_params, i)); - } -- else /* parent (child sesman)*/ ++ } + list_delete(xserver_params); + g_exit(1); + } @@ -3064,15 +3052,27 @@ + username, xpid); + + g_unset_signals(); -+ + +- /* logging parameters */ +- /* no problem calling strerror for thread safety: other threads are blocked */ +- log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, "errno: %d, description: %s", errno, g_get_strerror()); +- log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, "execve parameter list: %d", (xserver_params)->count); +- +- for (i=0; i<(xserver_params->count); i++) +- { +- log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, " argv[%d] = %s", i, (char*)list_get_item(xserver_params, i)); +- } +- list_delete(xserver_params); +- g_exit(1); + wmpid = g_fork(); + if (wmpid == -1) ++ { + } +- else /* parent (child sesman)*/ ++ else if (wmpid == 0) /* child */ { - /* new style waiting for clients */ - session_start_sessvc(xpid, wmpid, data); -+ } -+ else if (wmpid == 0) /* child */ -+ { + +#ifndef _WIN32 + close(pipefd[1]); @@ -3083,6 +3083,49 @@ + + auth_set_env(data); + ++ /* for XDMX sessions, we adjust screen size using xrandr once ++ the X server is up */ ++ if (type == SESMAN_SESSION_TYPE_XDMX) ++ { ++ if (g_fork() == 0) ++ { ++ struct list* xrandr_params=0; ++ ++ xrandr_params = list_create(); ++ xrandr_params->auto_free = 1; ++ list_add_item(xrandr_params, (long)g_strdup("xrandr")); ++ list_add_item(xrandr_params, (long)g_strdup("--fb")); ++ list_add_item(xrandr_params, (long)g_strdup(geometry)); ++ ++ /* make sure it ends with a zero */ ++ list_add_item(xrandr_params, 0); ++ pp1 = (char**)xrandr_params->items; ++ g_execvp("xrandr", pp1); ++ ++ /* should not get here */ ++ log_message(&(g_cfg->log), LOG_LEVEL_ALWAYS, ++ "error running xrandr - user %s", ++ username); ++ ++ /* logging parameters */ ++ log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, ++ "errno: %d, description: %s", ++ errno, g_get_strerror()); ++ log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, ++ "execve parameter list: %d", ++ (xrandr_params)->count); ++ ++ for (i=0; i<(xrandr_params->count); i++) ++ { ++ log_message(&(g_cfg->log), LOG_LEVEL_DEBUG, ++ " argv[%d] = %s", i, ++ (char*)list_get_item(xrandr_params, i)); ++ } ++ list_delete(xrandr_params); ++ g_exit(1); ++ } ++ } ++ + /* try to execute session window manager */ + if (*wm != '\0') + g_execlp3("/etc/X11/xdm/Xsession", "Xsession", wm); @@ -3183,7 +3226,7 @@ g_strncpy(temp->item->name, username, 255); ltime = g_time1(); -@@ -431,8 +783,6 @@ for user %s denied", username); +@@ -431,8 +826,6 @@ for user %s denied", username); g_session_count++; /*THERAD-FIX free the chain*/ lock_chain_release(); @@ -3192,7 +3235,7 @@ } return display; } -@@ -472,6 +822,7 @@ struct session_chain +@@ -472,6 +865,7 @@ struct session_chain struct session_chain* next; struct session_item* item; }; @@ -3200,7 +3243,7 @@ */ /******************************************************************************/ -@@ -513,6 +864,12 @@ session_kill(int pid) +@@ -513,6 +907,12 @@ session_kill(int pid) /* deleting the session */ log_message(&(g_cfg->log), LOG_LEVEL_INFO, "session %d - user %s - terminated", tmp->item->pid, tmp->item->name); ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org