[Xquartz-changes] xserver: Branch 'master' - 6 commits
Jeremy Huddleston
jeremyhu at freedesktop.org
Sun Jan 8 23:23:37 PST 2012
Rebased ref, commits from common ancestor:
commit a97252db24669a3e26a935024ea38b8a28d30586
Author: Jeremy Huddleston <jeremyhu at apple.com>
Date: Tue Dec 20 19:49:47 2011 -0800
XQuartz: GL: Buildfix for recent GLX changes
dispatch.h was leftover from an earlier implementation and is no longer
needed, so remove it since including it causes a build failure due to
conflicts between GL/gl.h and OpenGL/gl.h
Signed-off-by: Jeremy Huddleston <jeremyhu at apple.com>
Reviewed-by: Jamey Sharp <jamey at minilop.net>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
diff --git a/hw/xquartz/GL/indirect.c b/hw/xquartz/GL/indirect.c
index 27d6dae..e6ff376 100644
--- a/hw/xquartz/GL/indirect.c
+++ b/hw/xquartz/GL/indirect.c
@@ -48,9 +48,6 @@
#include <glxserver.h>
#include <glxutil.h>
-typedef unsigned long long GLuint64EXT;
-typedef long long GLint64EXT;
-#include <dispatch.h>
#include <glapi.h>
#include "x-hash.h"
commit 98cde254acb9b98337ddecf64c138d38c14ec2bf
Author: Keith Packard <keithp at keithp.com>
Date: Tue Dec 27 13:42:21 2011 -0800
Bump version to 1.11.99.901 (1.12 RC1)
Signed-off-by: Keith Packard <keithp at keithp.com>
diff --git a/configure.ac b/configure.ac
index 261af5f..6de92b4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
dnl Process this file with autoconf to create configure.
AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.11.99.2, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2011-12-17"
+AC_INIT([xorg-server], 1.11.99.901, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2011-12-27"
AC_CONFIG_SRCDIR([Makefile.am])
AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
commit 5037c9af78da6652189de7202e70e1b833395af5
Author: Keith Packard <keithp at keithp.com>
Date: Tue Dec 27 14:02:01 2011 -0800
glx/glapioffsets.h is no longer part of the build, remove it
Signed-off-by: Keith Packard <keithp at keithp.com>
diff --git a/glx/Makefile.am b/glx/Makefile.am
index f61a408..ced78b7 100644
--- a/glx/Makefile.am
+++ b/glx/Makefile.am
@@ -43,7 +43,6 @@ glapi_sources = \
glapi.c \
glapi.h \
glapi_gentable.c \
- glapioffsets.h \
glprocs.h \
glthread.c \
glthread.h
commit 8dedf9831bd80514d800f0085213296a3726dba7
Merge: cfc4c3d cf96183
Author: Keith Packard <keithp at keithp.com>
Date: Tue Dec 27 13:13:48 2011 -0800
Merge remote-tracking branch 'kibi/master'
commit cfc4c3d7fa8bd4da4c08b2ab8e6f85435f75353a
Author: Alan Coopersmith <alan.coopersmith at oracle.com>
Date: Sat Dec 24 10:00:56 2011 -0800
Add Solaris support to DetermineClientCmd
Uses /proc/pid/psinfo to read command & partial arguments.
Moves cmdsize & argsize variables into non-Solaris #else clause
to avoid unused variable warnings.
Fixes format mismatch errors when building with DEBUG defined on
a 64-bit platform (where Mask is defined as CARD32).
Signed-off-by: Alan Coopersmith <alan.coopersmith at oracle.com>
Reviewed-by: Rami Ylimäki <rami.ylimaki at vincit.fi>
Signed-off-by: Keith Packard <keithp at keithp.com>
diff --git a/os/client.c b/os/client.c
index 4aec097..8f4707b 100644
--- a/os/client.c
+++ b/os/client.c
@@ -59,6 +59,11 @@
#include "os.h"
#include "dixstruct.h"
+#ifdef __sun
+#include <errno.h>
+#include <procfs.h>
+#endif
+
/**
* Try to determine a PID for a client from its connection
* information. This should be called only once when new client has
@@ -117,8 +122,6 @@ void DetermineClientCmd(pid_t pid, const char **cmdname, const char **cmdargs)
{
char path[PATH_MAX + 1];
int totsize = 0;
- int cmdsize = 0;
- int argsize = 0;
int fd = 0;
if (cmdname)
@@ -129,6 +132,48 @@ void DetermineClientCmd(pid_t pid, const char **cmdname, const char **cmdargs)
if (pid == -1)
return;
+#ifdef __sun /* Solaris */
+ /* Solaris does not support /proc/pid/cmdline, but makes information
+ * similar to what ps shows available in a binary structure in the
+ * /proc/pid/psinfo file. */
+ if (snprintf(path, sizeof(path), "/proc/%d/psinfo", pid) < 0)
+ return;
+ fd = open(path, O_RDONLY);
+ if (fd < 0)
+ {
+ ErrorF ("Failed to open %s: %s\n", path, strerror(errno));
+ return;
+ }
+ else
+ {
+ psinfo_t psinfo = { 0 };
+ char *sp;
+
+ totsize = read(fd, &psinfo, sizeof(psinfo_t));
+ close(fd);
+ if (totsize <= 0)
+ return;
+
+ /* pr_psargs is the first PRARGSZ (80) characters of the command
+ * line string - assume up to the first space is the command name,
+ * since it's not delimited. While there is also pr_fname, that's
+ * more limited, giving only the first 16 chars of the basename of
+ * the file that was exec'ed, thus cutting off many long gnome
+ * command names, or returning "isapython2.6" for all python scripts.
+ */
+ psinfo.pr_psargs[PRARGSZ-1] = '\0';
+ sp = strchr(psinfo.pr_psargs, ' ');
+ if (sp)
+ *sp++ = '\0';
+
+ if (cmdname)
+ *cmdname = strdup(psinfo.pr_psargs);
+
+ if (cmdargs && sp)
+ *cmdargs = strdup(sp);
+ }
+#else /* not Solaris */
+
/* Check if /proc/pid/cmdline exists. It's not supported on all
* operating systems. */
if (snprintf(path, sizeof(path), "/proc/%d/cmdline", pid) < 0)
@@ -146,17 +191,20 @@ void DetermineClientCmd(pid_t pid, const char **cmdname, const char **cmdargs)
path[totsize - 1] = '\0';
/* Contruct the process name without arguments. */
- cmdsize = strlen(path) + 1;
if (cmdname)
{
*cmdname = strdup(path);
}
/* Construct the arguments for client process. */
- argsize = totsize - cmdsize;
- if (cmdargs && (argsize > 0))
+ if (cmdargs)
{
- char *args = malloc(argsize);
+ int cmdsize = strlen(path) + 1;
+ int argsize = totsize - cmdsize;
+ char *args = NULL;
+
+ if (argsize > 0)
+ args = malloc(argsize);
if (args)
{
int i = 0;
@@ -169,6 +217,7 @@ void DetermineClientCmd(pid_t pid, const char **cmdname, const char **cmdargs)
*cmdargs = args;
}
}
+#endif
}
/**
@@ -192,9 +241,9 @@ void ReserveClientIds(struct _Client *client)
DetermineClientCmd(client->clientIds->pid, &client->clientIds->cmdname, &client->clientIds->cmdargs);
DebugF("client(%lx): Reserved pid(%d).\n",
- client->clientAsMask, client->clientIds->pid);
+ (unsigned long) client->clientAsMask, client->clientIds->pid);
DebugF("client(%lx): Reserved cmdname(%s) and cmdargs(%s).\n",
- client->clientAsMask,
+ (unsigned long) client->clientAsMask,
client->clientIds->cmdname ? client->clientIds->cmdname : "NULL",
client->clientIds->cmdargs ? client->clientIds->cmdargs : "NULL");
#endif /* CLIENTIDS */
@@ -216,9 +265,9 @@ void ReleaseClientIds(struct _Client *client)
return;
DebugF("client(%lx): Released pid(%d).\n",
- client->clientAsMask, client->clientIds->pid);
+ (unsigned long) client->clientAsMask, client->clientIds->pid);
DebugF("client(%lx): Released cmdline(%s) and cmdargs(%s).\n",
- client->clientAsMask,
+ (unsigned long) client->clientAsMask,
client->clientIds->cmdname ? client->clientIds->cmdname : "NULL",
client->clientIds->cmdargs ? client->clientIds->cmdargs : "NULL");
commit cf96183122a85e3376e560f0360b38b5676e57a9
Author: Cyril Brulebois <kibi at debian.org>
Date: Wed Nov 2 12:41:20 2011 +0100
xorg.conf.man: Fix bad whatis entry.
Debian's QA tool âlintianâ reported a bad whatis entry for the
xorg.conf(.d) manpages.
It comes with the following pointers:
For manual pages that document multiple programs, functions, files, or
other things, the part before "\-" should list each separated by a
comma and a space. [â¦]
Refer to the lexgrog(1) manual page, the groff_man(7) manual page, and
the groff_mdoc(7) manual page for details.
Indeed, the current situation is:
$ whatis xorg.conf; whatis xorg.conf.d
xorg.conf (5) - (unknown subject)
xorg.conf.d (5) - (unknown subject)
With this patch:
xorg.conf (5) - configuration files for Xorg X server
xorg.conf.d (5) - configuration files for Xorg X server
Reviewed-by: Alan Coopersmith <alan.coopersmith at oracle.com>
Signed-off-by: Cyril Brulebois <kibi at debian.org>
diff --git a/hw/xfree86/man/xorg.conf.man b/hw/xfree86/man/xorg.conf.man
index 996798f..5790185 100644
--- a/hw/xfree86/man/xorg.conf.man
+++ b/hw/xfree86/man/xorg.conf.man
@@ -2,7 +2,7 @@
.ds q \N'34'
.TH __xconfigfile__ __filemansuffix__ __vendorversion__
.SH NAME
-__xconfigfile__ and __xconfigdir__ \- configuration files for
+__xconfigfile__, __xconfigdir__ \- configuration files for
__xservername__ X server
.SH INTRODUCTION
.B __xservername__
More information about the Xquartz-changes
mailing list