svn commit: r448838 - in head/x11/xinit: . files
Matthew Rezny
rezny at FreeBSD.org
Sun Aug 27 19:27:39 UTC 2017
Author: rezny
Date: Sun Aug 27 19:27:38 2017
New Revision: 448838
URL: https://svnweb.freebsd.org/changeset/ports/448838
Log:
Set correct $displayname and remove expr GNUisms
PR: 220668
Reported by: parakleta at darkreality.org, wulf
Added:
head/x11/xinit/files/
head/x11/xinit/files/patch-startx.cpp (contents, props changed)
Modified:
head/x11/xinit/Makefile
Modified: head/x11/xinit/Makefile
==============================================================================
--- head/x11/xinit/Makefile Sun Aug 27 19:23:44 2017 (r448837)
+++ head/x11/xinit/Makefile Sun Aug 27 19:27:38 2017 (r448838)
@@ -2,6 +2,7 @@
PORTNAME= xinit
PORTVERSION= 1.3.4
+PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= x11
Added: head/x11/xinit/files/patch-startx.cpp
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/x11/xinit/files/patch-startx.cpp Sun Aug 27 19:27:38 2017 (r448838)
@@ -0,0 +1,49 @@
+# remove expr GNUisms: use BRE syntax and remove match, based on
+# upstream commit e3bab0cc706880c22f2b205e7abad9d8c0227071, but
+# also shield expr from leading dash of X server args.
+#
+# generate displayname as dictated in the xauth manpage
+#
+--- startx.cpp.orig 2014-09-11 17:31:42 UTC
++++ startx.cpp
+@@ -154,7 +154,7 @@ while [ x"$1" != x ]; do
+ else
+ XCOMM display must be the FIRST server argument
+ if [ x"$serverargs" = x ] && @@
+- expr "$1" : ':[0-9][0-9]*$' > /dev/null 2>&1; then
++ expr \( "$1" \) : ':[0-9][0-9]*$' > /dev/null 2>&1; then
+ display="$1"
+ else
+ serverargs="$serverargs $1"
+@@ -193,7 +193,7 @@ if [ x"$server" = x ]; then
+ XCOMM the startx session being seen as inactive:
+ XCOMM "https://bugzilla.redhat.com/show_bug.cgi?id=806491"
+ tty=$(tty)
+- if expr match "$tty" '^/dev/tty[0-9]\+$' > /dev/null; then
++ if expr "$tty" : '/dev/tty[0-9][0-9]*$' > /dev/null; then
+ tty_num=$(echo "$tty" | grep -oE '[0-9]+$')
+ vtarg="vt$tty_num"
+ fi
+@@ -217,7 +217,7 @@ fi
+ XCOMM if no vt is specified add vtarg (which may be empty)
+ have_vtarg="no"
+ for i in $serverargs; do
+- if expr match "$i" '^vt[0-9]\+$' > /dev/null; then
++ if expr \( "$i" \) : 'vt[0-9][0-9]*$' > /dev/null; then
+ have_vtarg="yes"
+ fi
+ done
+@@ -283,10 +283,10 @@ EOF
+
+ XCOMM now add the same credentials to the client authority file
+ XCOMM if '$displayname' already exists do not overwrite it as another
+- XCOMM server man need it. Add them to the '$xserverauthfile' instead.
+- for displayname in $authdisplay $hostname$authdisplay; do
++ XCOMM server may need it. Add them to the '$xserverauthfile' instead.
++ for displayname in $authdisplay $hostname/unix$authdisplay; do
+ authcookie=`XAUTH list "$displayname" @@
+- | sed -n "s/.*$displayname[[:space:]*].*[[:space:]*]//p"` 2>/dev/null;
++ | sed -n "s|.*$displayname[[:space:]*].*[[:space:]*]||p"` 2>/dev/null;
+ if [ "z${authcookie}" = "z" ] ; then
+ XAUTH -q << EOF
+ add $displayname . $mcookie
More information about the svn-ports-all
mailing list