Cygwin XFree86 startx Problem
Harold L Hunt II
huntharo@msu.edu
Wed Dec 3 01:38:00 GMT 2003
Igor,
Cool. Thanks!
Harold
Igor Pechtchanski wrote:
> On Sat, 29 Nov 2003, Igor Pechtchanski wrote:
>
>
>>On Sat, 22 Nov 2003, Harold L Hunt II wrote:
>>
>>
>>>Igor,
>>>
>>>Igor Pechtchanski wrote:
>>>
>>>>On Fri, 21 Nov 2003, Harold L Hunt II wrote:
>>>>
>>>>
>>>>>Igor,
>>>>>
>>>>>Igor Pechtchanski wrote:
>>>>>
>>>>>
>>>>>
>>>>>>On Fri, 21 Nov 2003, Chan Seng Loong wrote:
>>>>>>
>>>>>>
>>>>>>>hi again...
>>>>>>>
>>>>>>>Thanks to Mr. Igor Pechtchanski, the "[: Seng: unknown
>>>>>>>operand" problem is eleminated with the power of ""
>>>>>>>qutoes :-D
>>>>>>
>>>>>>Good. Harold, how do you want to go about incorporating the patch?
>>>>>
>>>>>As you suspected, I think this is actually a generated file. Granted,
>>>>>the input is similar to the output, but it is a different file that
>>>>>needs to be patched. Again, I cannot check this right now.
>>>>>
>>>>>As far as what to do with the patch, it is hard to say. Are you just
>>>>>asking about how it will get into my next release? That should be easy.
>>>>> As far as finding it an upstream home, we still have to wait for the
>>>>>tree on freedesktop.org to finish being setup.
>>>>>
>>>>>Harold
>>>>
>>>>Ok, I'll try to checkout the CVS tree at some point soon and produce this
>>>>patch off the correct file.
>>>
>>>Base the patch off of the SourceForge tree that we have for now:
>>>
>>>http://sourceforge.net/projects/xoncygwin/
>>>
>>>That's what I essentially do my builds from, so it should work.
>>>Hopefully the file in question is actually in that tree... if not, then
>>>just wait until our freedesktop.org tree is ready.
>>>
>>>Harold
>>
>>Harold,
>>
>>The file (startx.cpp) is in xc/programs/xinit, and the xoncygwin tree only
>>has xc/programs/Xserver. Are you going to use the tree on freedesktop.org
>>(which is already set up at "xorg") for further builds of the non-server
>>parts? If so, should I use the MAIN branch there, or the XORG-CURRENT
>>branch?
>> Igor
>
>
> Harold,
>
> Here's a patch against the HEAD of the MAIN branch in the xorg tree at
> freedesktop.org. ChangeLog is below. Let me know if there's a problem.
> Igor
> ==============================================================================
> ChangeLog:
> 2003-12-02 Igor Pechtchanski <pechtcha@cs.nyu.edu>
> * xc/programs/xinit/startx.cpp: Make space-friendly.
>
>
>
> ------------------------------------------------------------------------
>
> --- xc/programs/xinit/startx.cpp-orig 2003-12-02 13:10:12.000000000 -0500
> +++ xc/programs/xinit/startx.cpp 2003-12-02 13:45:06.566899200 -0500
> @@ -48,8 +48,9 @@ fi
> scoclientrc=$HOME/.startxrc
> #endif
>
> -userclientrc=$HOME/.xinitrc
> -userserverrc=$HOME/.xserverrc
> +userclientrc="$HOME/.xinitrc"
> +userserverrc="$HOME/.xserverrc"
> +/* Note: XINITDIR and BINDIR should be space-free */
> sysclientrc=XINITDIR/xinitrc
> sysserverrc=XINITDIR/xserverrc
> defaultclient=BINDIR/xterm
> @@ -64,19 +65,19 @@ if [ -f $scoclientrc ]; then
> defaultclientargs=$scoclientrc
> else
> #endif
> -if [ -f $userclientrc ]; then
> - defaultclientargs=$userclientrc
> -elif [ -f $sysclientrc ]; then
> - defaultclientargs=$sysclientrc
> +if [ -f "$userclientrc" ]; then
> + defaultclientargs="\"$userclientrc\""
> +elif [ -f "$sysclientrc" ]; then
> + defaultclientargs="\"$sysclientrc\""
> fi
> #ifdef SCO
> fi
> #endif
>
> -if [ -f $userserverrc ]; then
> - defaultserverargs=$userserverrc
> -elif [ -f $sysserverrc ]; then
> - defaultserverargs=$sysserverrc
> +if [ -f "$userserverrc" ]; then
> + defaultserverargs="\"$userserverrc\""
> +elif [ -f "$sysserverrc" ]; then
> + defaultserverargs="\"$sysserverrc\""
> fi
>
> whoseargs="client"
> @@ -86,15 +87,15 @@ while [ x"$1" != x ]; do
> /''*|\./''*)
> if [ "$whoseargs" = "client" ]; then
> if [ x"$clientargs" = x ]; then
> - client="$1"
> + client="\"$1\""
> else
> - clientargs="$clientargs $1"
> + clientargs="$clientargs \"$1\""
> fi
> else
> if [ x"$serverargs" = x ]; then
> - server="$1"
> + server="\"$1\""
> else
> - serverargs="$serverargs $1"
> + serverargs="$serverargs \"$1\""
> fi
> fi
> ;;
> @@ -103,14 +104,14 @@ while [ x"$1" != x ]; do
> ;;
> *)
> if [ "$whoseargs" = "client" ]; then
> - clientargs="$clientargs $1"
> + clientargs="$clientargs \"$1\""
> else
> XCOMM display must be the FIRST server argument
> if [ x"$serverargs" = x ] && @@
> expr "$1" : ':[0-9][0-9]*$' > /dev/null 2>&1; then
> - display="$1"
> + display="\"$1\""
> else
> - serverargs="$serverargs $1"
> + serverargs="$serverargs \"$1\""
> fi
> fi
> ;;
> @@ -124,7 +125,7 @@ if [ x"$client" = x ]; then
> if [ x"$clientargs" = x ]; then
> client="$defaultclientargs"
> else
> - client=$defaultclient
> + client="$defaultclient"
> fi
> fi
>
> @@ -134,12 +135,12 @@ if [ x"$server" = x ]; then
> if [ x"$serverargs" = x -a x"$display" = x ]; then
> server="$defaultserverargs"
> else
> - server=$defaultserver
> + server="$defaultserver"
> fi
> fi
>
> if [ x"$XAUTHORITY" = x ]; then
> - XAUTHORITY=$HOME/.Xauthority
> + XAUTHORITY="$HOME/.Xauthority"
> export XAUTHORITY
> fi
>
> @@ -172,9 +173,13 @@ EOF
> done
> #endif
>
> -xinit $client $clientargs -- $server $display $serverargs
> +XCOMM correctly process quotes, etc
> +eval "set -- $client $clientargs -- $server $display $serverargs"
> +
> +xinit "$@"
>
> if [ x"$removelist" != x ]; then
> + XCOMM Note: this is still not space-friendly!
> xauth remove $removelist
> fi
>
More information about the Cygwin-xfree
mailing list