Adding this change mentioned in my last commit, but didn't get included.
authorbc99092
Tue, 06 Jun 2006 05:46:05 +0000
changeset 7375 dd6bce4363fb
parent 7374 edc7afcc65ec
child 7376 609397372f40
Adding this change mentioned in my last commit, but didn't get included. 2006-06-06 Brian Cameron <[email protected]> * gdm.spec, patches/gdm-01-branding-defaults-solaris.diff, gdm-12-fixflexiserver.diff, ext-sources/gdm.xml: Added patch gdm-12-fixflexiserver.diff to fix a core dumping problem. Modified gdm-01-branding-defaults-solaris.diff to better integrate with ctrun and updated the gdm.xml SVC manifest so that core dumps do not cause GDM to restart. * gdm-05-fix-a11y-crash.diff: Removed and renumbered patches.
patches/gdm-01-branding-defaults-solaris.diff
--- a/patches/gdm-01-branding-defaults-solaris.diff	Tue Jun 06 05:39:37 2006 +0000
+++ b/patches/gdm-01-branding-defaults-solaris.diff	Tue Jun 06 05:46:05 2006 +0000
@@ -36,7 +36,7 @@
 -Exec=gnome-session
 +_Name=Opensolaris GNOME Desktop
 +_Comment=This session logs you into the Opensolaris GNOME Desktop
-+Exec=/usr/dt/config/Xsession.jds
++Exec=ctrun -l child -i none /usr/dt/config/Xsession.jds
  TryExec=gnome-session
  # no icon yet, only the top three are currently used
  Icon=
@@ -134,3 +134,173 @@
  GraphicalThemeDir=@datadir@/gdm/themes/
  GraphicalThemeRand=false
  
+--- /tmp/AccessDwellMouseEvents.in	2006-06-05 16:48:54.478758671 -0500
++++ gdm-2.14.7/gui/modules/AccessDwellMouseEvents.in	2006-06-05 16:46:23.898422000 -0500
+@@ -15,7 +15,7 @@
+ #   that the initial crossing is a motion In or Out of the window.
+ # 
+ # e.g.
+-# TBLR I 10000    @AT_BINDIR@/gok --login --access-method=dwellselection
++# TBLR I 10000    /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=dwellselection"
+ #
+ # Means the user crosses into the top border, out the bottom border, into the left
+ # border, and then out the right border (in that order).  The initial_direction
+@@ -30,7 +30,24 @@
+ #
+ # e.g.
+ #
+-# <Add>           @AT_BINDIR@/gnome-mag
++# <Add>           /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gnome-mag"
++
++# GNOME On-Screen Keyboard - support several different options for different
++# user needs.  Note these gestures all start by moving the mouse into the top
++# window border.
++#
++TBLR I 10000    /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=dwellselection"
++TLBR I 10000    /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=automaticscanning --scan-action=switch1 --select-action=switch1"
++TRBL I 10000    /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=inversescanning --scan-action=switch1 --select-action=switch2"
++TBRL I 10000    /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login  --access-method=automaticscanning --scan-action=switch3 --select-action=switch3"
++
++# Gnopernicus.  Note these gestures all start by moving the mouse into the
++# bottom window border.
++#
++# Speech
++BTRL I 10000    /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/srcore --login --enable-speech"
++# Magnifier
++BTLR I 10000    /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/srcore --login --enable-magnifier --disable-speech --disable-braille"
++# Speech and Magnifier
++BRTL I 10000    /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/srcore --login"
+ 
+-# current:
+-TBLR I 10000    @AT_BINDIR@/gok --login --access-method=dwellselection
+--- /tmp/AccessKeyMouseEvents.in	2006-06-05 16:48:54.478838472 -0500
++++ gdm-2.14.7/gui/modules/AccessKeyMouseEvents.in	2006-06-05 16:48:00.224771000 -0500
+@@ -15,7 +15,7 @@
+ #
+ # e.g.
+ #
+-# <Control>k  5 1000 10000  @AT_BINDIR@/gok --login --access-method=directselection
++# <Control>k  5 1000 10000  /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=directselection"
+ #
+ # Means press Contol-k 5 times, holding each keypress down for at least 1000ms
+ # each time and with no greater interval than 10000ms between each event in the
+@@ -26,8 +26,8 @@
+ # otherwise the sequence will be lost.
+ #
+ # e.g.
+-# Shift_L  5 1000 10000  @AT_BINDIR@/gok --login --access-method=directselection
+-# Shift_R  5 1000 10000  @AT_BINDIR@/gok --login --access-method=directselection
++# Shift_L  5 1000 10000  /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=directselection"
++# Shift_R  5 1000 10000  /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=directselection"
+ #
+ # Will start gok if you press either shift key 5 times holding it down for more
+ # then 1 second each time.
+@@ -39,7 +39,7 @@
+ #
+ # e.g.
+ #
+-# <Mouse2>  4 3000 6000  @AT_BINDIR@/gnopernicus
++# <Mouse2>  4 3000 6000  /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gnopernicus"
+ #
+ # Note that mouse numbers are 1-based so <Mouse1> is the left mouse button,
+ # <Mouse3> is the right mouse button and <Mouse2> is the middle mouse button.
+@@ -51,26 +51,27 @@
+ #
+ # e.g.
+ #
+-# <Add>  @AT_BINDIR@/gnome-mag
++# <Add>  /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gnome-mag"
+ #
+ # Note that pressing any other keys 
+ 
+ # current:
+ 
+ # hold right or left mouse button 3 times for 3 seconds each time
+-<Mouse1> 3 3000 10000 @AT_BINDIR@/gok --login --access-method=directselection
++<Mouse1> 3 3000 10000 /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=directselection"
+ # we add the right mouse button as it may be the left mouse button
+ # for a left handed user
+-<Mouse3> 3 3000 10000 @AT_BINDIR@/gok --login --access-method=directselection
++<Mouse3> 3 3000 10000 /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=directselection"
+ 
+-<Switch1> 1 5000 0 @AT_BINDIR@/gok --login --access-method=automaticscanning --scan-action=switch1 --select-action=switch1
+-<Switch2> 3 50 3000 @AT_BINDIR@/gok --login --access-method=inversescanning --scan-action=switch1 --select-action=switch2
+-<Switch3> 3 1000 10000 @AT_BINDIR@/gok --login  --access-method=automaticscanning --scan-action=switch3 --select-action=switch3
++<Switch1> 1 5000 0 /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=automaticscanning --scan-action=switch1 --select-action=switch1"
++<Switch2> 3 50 3000 /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login --access-method=inversescanning --scan-action=switch1 --select-action=switch2"
++<Switch3> 3 1000 10000 /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/gok --login  --access-method=automaticscanning --scan-action=switch3 --select-action=switch3"
+ 
+ # press ctrl-s for 1 second to launch gnopernicus speech
+ # gnopernicus, speech mode
+-<Control>s  1 1000 10000  @AT_BINDIR@/srcore --login --enable-speech
++<Control>s  1 1000 10000  /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/srcore --login --enable-speech"
+ # press ctrl-m for 1 second to launch gnopernicus magnifier
+-<Control>m  1 1000 10000  @AT_BINDIR@/srcore --login --enable-magnifier --disable-speech --disable-braille
++<Control>m  1 1000 10000  /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/srcore --login --enable-magnifier --disable-speech --disable-braille"
+ # press ctrl-g for 1 second to launch both gnopernicus speech and magnifier
+-<Control>g  1 1000 10000  @AT_BINDIR@/srcore --login 
++<Control>g  1 1000 10000  /bin/sh -c "ctrun -l child -i none @AT_BINDIR@/srcore --login"
++
+--- gdm-2.14.7/config/CDE.desktop.in-orig	2006-06-05 23:40:03.552332000 -0500
++++ gdm-2.14.7/config/CDE.desktop.in	2006-06-05 23:40:22.579644000 -0500
+@@ -2,7 +2,7 @@
+ Encoding=UTF-8
+ _Name=CDE
+ _Comment=This session logs you into CDE
+-Exec=/usr/dt/bin/Xsession
++Exec=ctrun -l child -i none /usr/dt/bin/Xsession
+ # no icon yet, only the top three are currently used
+ Icon=
+ Type=Application
+--- gdm-2.14.7/daemon/slave.c-orig	2006-06-05 23:40:33.389283000 -0500
++++ gdm-2.14.7/daemon/slave.c	2006-06-05 23:43:34.281067000 -0500
+@@ -3363,6 +3363,8 @@ session_child_run (struct passwd *pwent,
+ #else
+ 	char *argv[7];
+ #endif
++	char **argv2;
++	gchar *ctrun;
+ 
+ #ifdef CAN_USE_SETPENV
+ 	extern char **newenv;
+@@ -3862,7 +3864,17 @@ session_child_run (struct passwd *pwent,
+ 	}
+ #endif
+ 
+-	VE_IGNORE_EINTR (execv (argv[0], argv));
++	ctrun = g_strdup_printf ("/bin/sh -c \"ctrun -l child -i none %s %s %s %s %s %s %s\"",
++		argv[0] ? argv[0] : "",
++		argv[1] ? argv[1] : "",
++		argv[2] ? argv[2] : "",
++		argv[3] ? argv[3] : "",
++		argv[4] ? argv[4] : "",
++		argv[5] ? argv[5] : "",
++		argv[6] ? argv[6] : "");
++	argv2 = ve_split (ctrun);
++
++	VE_IGNORE_EINTR (execv (argv2[0], argv2));
+ 
+ 	/* will go to .xsession-errors */
+ #ifdef HAVE_TSOL
+@@ -5186,7 +5198,7 @@ gdm_slave_exec_script (GdmDisplay *d, co
+ 		       struct passwd *pwent, gboolean pass_stdout)
+ {
+     pid_t pid;
+-    char *script;
++    char *script, *ctrun;
+     gchar **argv;
+     gint status;
+     char *x_servers_file;
+@@ -5313,7 +5325,11 @@ gdm_slave_exec_script (GdmDisplay *d, co
+ 	if ( ! ve_string_empty (d->theme_name))
+ 		g_setenv ("GDM_GTK_THEME", d->theme_name, TRUE);
+ 	g_unsetenv ("MAIL");
+-	argv = ve_split (script);
++
++	ctrun = g_strdup_printf ("/bin/sh -c \"ctrun -l child -i none %s\"",
++		script);
++	argv = ve_split (ctrun);
++
+ 	VE_IGNORE_EINTR (execv (argv[0], argv));
+ 	syslog (LOG_ERR, _("%s: Failed starting: %s"), "gdm_slave_exec_script",
+ 		script);