xorg-server: Changes to 'ubuntu'
debian/changelog | 9 +
debian/patches/series | 1
debian/patches/xmir-desktop-file-hint-flag.patch | 27 +++
debian/patches/xmir-rootless.patch | 24 +--
debian/patches/xmir.patch | 179 ++++++++++++-----------
5 files changed, 147 insertions(+), 93 deletions(-)
New commits:
commit f904788ee3b0403680352c87e05245928d7df702
Author: Robert Ancell <robert.ancell@canonical.com>
Date: Wed Jul 29 15:13:39 2015 +1200
* debian/patches/xmir.patch:
- Fix cursor crash
* debian/patches/xmir-desktop-file-hint-flag.patch:
- Split Unity8 hack out from xmir.patch
diff --git a/debian/changelog b/debian/changelog
index d1d2f1b..827c9da 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+xorg-server (2:1.17.2-1ubuntu2) UNRELEASED; urgency=medium
+
+ * debian/patches/xmir.patch:
+ - Fix cursor crash
+ * debian/patches/xmir-desktop-file-hint-flag.patch:
+ - Split Unity8 hack out from xmir.patch
+
+ -- Robert Ancell <robert.ancell@canonical.com> Wed, 29 Jul 2015 14:18:31 +1200
+
xorg-server (2:1.17.2-1ubuntu1) wily; urgency=medium
[ Timo Aaltonen ]
diff --git a/debian/patches/series b/debian/patches/series
index cf2fcbe..bbac1ac 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -48,5 +48,6 @@ disable-rotation-transform-gpuscreens.patch
fix-ftbfs-ppc64el.patch
xmir.patch
xmir-rootless.patch
+xmir-desktop-file-hint-flag.patch
drm_device_keep_trying.patch
xi2-resize-touch.patch
diff --git a/debian/patches/xmir-desktop-file-hint-flag.patch b/debian/patches/xmir-desktop-file-hint-flag.patch
new file mode 100644
index 0000000..8b3a1dd
--- /dev/null
+++ b/debian/patches/xmir-desktop-file-hint-flag.patch
@@ -0,0 +1,27 @@
+From cc91948d4be69af96ddf9417a4b3cfac5d0f0f35 Mon Sep 17 00:00:00 2001
+From: Robert Ancell <robert.ancell@canonical.com>
+Date: Mon, 13 Jul 2015 15:54:32 +1200
+Subject: [PATCH 3/4] xmir: Ignore --desktop_file_hint flag required by Unity8
+ to decide which application is starting
+
+---
+ hw/xmir/xmir.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/hw/xmir/xmir.c b/hw/xmir/xmir.c
+index 2a7227e..810b715 100644
+--- a/hw/xmir/xmir.c
++++ b/hw/xmir/xmir.c
+@@ -123,6 +123,9 @@ ddxProcessArgument(int argc, char *argv[], int i)
+ } else if (!strcmp(argv[i], "-novtswitch") ||
+ !strncmp(argv[i], "vt", 2)) {
+ return 1;
++ /* Bypass unity8 "security" */
++ } else if (!strncmp(argv[i], "--desktop_file_hint=", strlen("--desktop_file_hint="))) {
++ return 1;
+ } else if (!strcmp(argv[i], "-fd")) {
+ if (!seen_shared)
+ NoListenAll = 1;
+--
+2.4.6
+
diff --git a/debian/patches/xmir-rootless.patch b/debian/patches/xmir-rootless.patch
index 82b20b1..4f0196a 100644
--- a/debian/patches/xmir-rootless.patch
+++ b/debian/patches/xmir-rootless.patch
@@ -1,7 +1,7 @@
-From ae3f0599114144c26ab1de02320f000c86b2d042 Mon Sep 17 00:00:00 2001
+From 3c705fcf4a68de1276d1a2f6ee176ec7e62eb9df Mon Sep 17 00:00:00 2001
From: Robert Ancell <robert.ancell@canonical.com>
Date: Thu, 9 Jul 2015 14:03:49 +1200
-Subject: [PATCH 2/3] xmir: Support rootless
+Subject: [PATCH 2/4] xmir: Support rootless
Contributions from:
Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
@@ -56,10 +56,10 @@ index b96cb1d..f279013 100644
VisualID parentVisual,
VisualID winVisual);
diff --git a/hw/xmir/xmir-cursor.c b/hw/xmir/xmir-cursor.c
-index 143f008..dd9a8a7 100644
+index 459f9ac..c311d88 100644
--- a/hw/xmir/xmir-cursor.c
+++ b/hw/xmir/xmir-cursor.c
-@@ -131,7 +131,10 @@ xmir_input_set_cursor(struct xmir_input *xmir_input)
+@@ -134,7 +134,10 @@ xmir_input_set_cursor(struct xmir_input *xmir_input)
config = mir_cursor_configuration_from_buffer_stream(stream, cursor->bits->xhot, cursor->bits->yhot);
apply:
@@ -72,7 +72,7 @@ index 143f008..dd9a8a7 100644
if (stream)
diff --git a/hw/xmir/xmir-dri2.c b/hw/xmir/xmir-dri2.c
-index 21de4f9..b88d089 100644
+index 1f7c1b0..4f95006 100644
--- a/hw/xmir/xmir-dri2.c
+++ b/hw/xmir/xmir-dri2.c
@@ -90,8 +90,12 @@ static struct xmir_window *
@@ -167,7 +167,7 @@ index f958e87..c1770d5 100644
xmir_screen->windowed = 1;
diff --git a/hw/xmir/xmir.c b/hw/xmir/xmir.c
-index ce30727..a598c0d 100644
+index c07457d..2a7227e 100644
--- a/hw/xmir/xmir.c
+++ b/hw/xmir/xmir.c
@@ -33,6 +33,7 @@
@@ -196,7 +196,7 @@ index ce30727..a598c0d 100644
strcmp(argv[i], "-egl") == 0 ||
strcmp(argv[i], "-egl_sync") == 0 ||
strcmp(argv[i], "-2x") == 0 ||
-@@ -424,8 +427,21 @@ xmir_realize_window(WindowPtr window)
+@@ -422,8 +425,21 @@ xmir_realize_window(WindowPtr window)
xmir_screen->RealizeWindow = screen->RealizeWindow;
screen->RealizeWindow = xmir_realize_window;
@@ -220,7 +220,7 @@ index ce30727..a598c0d 100644
spec = mir_connection_create_spec_for_normal_surface(xmir_screen->conn,
mir_width,
-@@ -530,8 +546,15 @@ xmir_handle_surface_event(struct xmir_window *xmir_window, MirSurfaceAttrib attr
+@@ -528,8 +544,15 @@ xmir_handle_surface_event(struct xmir_window *xmir_window, MirSurfaceAttrib attr
void
xmir_close_surface(struct xmir_window *xmir_window)
{
@@ -238,7 +238,7 @@ index ce30727..a598c0d 100644
}
static void
-@@ -663,7 +686,8 @@ xmir_is_unblank(int mode)
+@@ -661,7 +684,8 @@ xmir_is_unblank(int mode)
Bool
DPMSSupported(void)
{
@@ -248,7 +248,7 @@ index ce30727..a598c0d 100644
}
int
-@@ -732,12 +756,16 @@ xmir_create_screen_resources(ScreenPtr screen)
+@@ -730,12 +754,16 @@ xmir_create_screen_resources(ScreenPtr screen)
if (!ret)
return ret;
@@ -267,7 +267,7 @@ index ce30727..a598c0d 100644
glamor_pixmap_private *pixmap_priv = glamor_get_pixmap_private(screen->devPrivate);
glBindFramebuffer(GL_FRAMEBUFFER, pixmap_priv->base.fbo->fb);
-@@ -819,7 +847,9 @@ xmir_screen_init(ScreenPtr pScreen, int argc, char **argv)
+@@ -817,7 +845,9 @@ xmir_screen_init(ScreenPtr pScreen, int argc, char **argv)
xmir_screen->glamor = 1;
for (i = 1; i < argc; i++) {
@@ -292,5 +292,5 @@ index e43fa40..b67f3a1 100644
CreateScreenResourcesProcPtr CreateScreenResources;
CloseScreenProcPtr CloseScreen;
--
-2.1.4
+2.4.6
diff --git a/debian/patches/xmir.patch b/debian/patches/xmir.patch
index 06f0266..117b7dc 100644
--- a/debian/patches/xmir.patch
+++ b/debian/patches/xmir.patch
@@ -1,7 +1,7 @@
-From df6cf00a92b45129af1f187924b664a1ff64408e Mon Sep 17 00:00:00 2001
+From 0ee9ce22bb8741841d37bd0c4bd9a48bf86e82a0 Mon Sep 17 00:00:00 2001
From: Robert Ancell <robert.ancell@canonical.com>
Date: Fri, 15 May 2015 14:58:59 +1200
-Subject: [PATCH 1/3] XMir DDX
+Subject: [PATCH 1/4] XMir DDX
Contributions from:
Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
@@ -18,16 +18,16 @@ Contributions from:
hw/xmir/dri2/dri2.h | 364 +++++++++++
hw/xmir/dri2/dri2ext.c | 683 +++++++++++++++++++++
hw/xmir/dri2/dri2int.h | 26 +
- hw/xmir/xmir-cursor.c | 211 +++++++
+ hw/xmir/xmir-cursor.c | 214 +++++++
hw/xmir/xmir-cvt.c | 304 ++++++++++
hw/xmir/xmir-dri2.c | 529 ++++++++++++++++
- hw/xmir/xmir-glamor.c | 1187 ++++++++++++++++++++++++++++++++++++
+ hw/xmir/xmir-glamor.c | 1184 ++++++++++++++++++++++++++++++++++++
hw/xmir/xmir-input.c | 505 ++++++++++++++++
hw/xmir/xmir-output.c | 444 ++++++++++++++
hw/xmir/xmir-thread-proxy.c | 132 ++++
- hw/xmir/xmir.c | 983 ++++++++++++++++++++++++++++++
+ hw/xmir/xmir.c | 981 ++++++++++++++++++++++++++++++
hw/xmir/xmir.h | 211 +++++++
- 18 files changed, 7085 insertions(+), 2 deletions(-)
+ 18 files changed, 7083 insertions(+), 2 deletions(-)
create mode 100644 hw/xmir/.gitignore
create mode 100644 hw/xmir/Makefile.am
create mode 100644 hw/xmir/dri2/Makefile.am
@@ -45,11 +45,11 @@ Contributions from:
create mode 100644 hw/xmir/xmir.c
create mode 100644 hw/xmir/xmir.h
-Index: xorg-server-1.17.2/configure.ac
-===================================================================
---- xorg-server-1.17.2.orig/configure.ac
-+++ xorg-server-1.17.2/configure.ac
-@@ -629,6 +629,7 @@ AC_ARG_ENABLE(xvfb, AS_HELP_ST
+diff --git a/configure.ac b/configure.ac
+index d8f0e74..75d74ae 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -624,6 +624,7 @@ AC_ARG_ENABLE(xvfb, AS_HELP_STRING([--enable-xvfb], [Build Xvfb server
AC_ARG_ENABLE(xnest, AS_HELP_STRING([--enable-xnest], [Build Xnest server (default: auto)]), [XNEST=$enableval], [XNEST=auto])
AC_ARG_ENABLE(xquartz, AS_HELP_STRING([--enable-xquartz], [Build Xquartz server for OS-X (default: auto)]), [XQUARTZ=$enableval], [XQUARTZ=auto])
AC_ARG_ENABLE(xwayland, AS_HELP_STRING([--enable-xwayland], [Build Xwayland server (default: auto)]), [XWAYLAND=$enableval], [XWAYLAND=auto])
@@ -57,7 +57,7 @@ Index: xorg-server-1.17.2/configure.ac
AC_ARG_ENABLE(standalone-xpbproxy, AS_HELP_STRING([--enable-standalone-xpbproxy], [Build a standalone xpbproxy (in addition to the one integrated into Xquartz as a separate thread) (default: no)]), [STANDALONE_XPBPROXY=$enableval], [STANDALONE_XPBPROXY=no])
AC_ARG_ENABLE(xwin, AS_HELP_STRING([--enable-xwin], [Build XWin server (default: auto)]), [XWIN=$enableval], [XWIN=auto])
AC_ARG_ENABLE(glamor, AS_HELP_STRING([--enable-glamor], [Build glamor dix module (default: no)]), [GLAMOR=$enableval], [GLAMOR=no])
-@@ -750,6 +751,7 @@ case $host_os in
+@@ -745,6 +746,7 @@ case $host_os in
XVFB=no
XNEST=no
XWAYLAND=no
@@ -65,7 +65,7 @@ Index: xorg-server-1.17.2/configure.ac
COMPOSITE=no
DGA=no
-@@ -2495,6 +2497,27 @@ if test "x$XWAYLAND" = xyes; then
+@@ -2474,6 +2476,27 @@ if test "x$XWAYLAND" = xyes; then
[${WAYLAND_PREFIX}/bin$PATH_SEPARATOR$PATH])
fi
@@ -93,7 +93,7 @@ Index: xorg-server-1.17.2/configure.ac
dnl and the rest of these are generic, so they're in config.h
dnl
-@@ -2643,6 +2666,8 @@ hw/kdrive/fbdev/Makefile
+@@ -2622,6 +2645,8 @@ hw/kdrive/fbdev/Makefile
hw/kdrive/linux/Makefile
hw/kdrive/src/Makefile
hw/xwayland/Makefile
@@ -102,10 +102,10 @@ Index: xorg-server-1.17.2/configure.ac
test/Makefile
test/xi1/Makefile
test/xi2/Makefile
-Index: xorg-server-1.17.2/hw/Makefile.am
-===================================================================
---- xorg-server-1.17.2.orig/hw/Makefile.am
-+++ xorg-server-1.17.2/hw/Makefile.am
+diff --git a/hw/Makefile.am b/hw/Makefile.am
+index 19895dc..b7b958c 100644
+--- a/hw/Makefile.am
++++ b/hw/Makefile.am
@@ -30,6 +30,10 @@ if XWAYLAND
XWAYLAND_SUBDIRS = xwayland
endif
@@ -130,16 +130,18 @@ Index: xorg-server-1.17.2/hw/Makefile.am
relink:
$(AM_V_at)for i in $(SUBDIRS) ; do $(MAKE) -C $$i relink || exit 1 ; done
-Index: xorg-server-1.17.2/hw/xmir/.gitignore
-===================================================================
+diff --git a/hw/xmir/.gitignore b/hw/xmir/.gitignore
+new file mode 100644
+index 0000000..b6a16d4
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/.gitignore
++++ b/hw/xmir/.gitignore
@@ -0,0 +1 @@
+Xmir
-Index: xorg-server-1.17.2/hw/xmir/Makefile.am
-===================================================================
+diff --git a/hw/xmir/Makefile.am b/hw/xmir/Makefile.am
+new file mode 100644
+index 0000000..be5225e
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/Makefile.am
++++ b/hw/xmir/Makefile.am
@@ -0,0 +1,61 @@
+bin_PROGRAMS = Xmir
+
@@ -202,10 +204,11 @@ Index: xorg-server-1.17.2/hw/xmir/Makefile.am
+
+relink:
+ $(AM_V_at)rm -f Xmir$(EXEEXT) && $(MAKE) Xmir$(EXEEXT)
-Index: xorg-server-1.17.2/hw/xmir/dri2/Makefile.am
-===================================================================
+diff --git a/hw/xmir/dri2/Makefile.am b/hw/xmir/dri2/Makefile.am
+new file mode 100644
+index 0000000..696240c
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/dri2/Makefile.am
++++ b/hw/xmir/dri2/Makefile.am
@@ -0,0 +1,14 @@
+noinst_LTLIBRARIES = libdri2.la
+
@@ -221,10 +224,11 @@ Index: xorg-server-1.17.2/hw/xmir/dri2/Makefile.am
+ dri2ext.c \
+ dri2int.h
+
-Index: xorg-server-1.17.2/hw/xmir/dri2/dri2.c
-===================================================================
+diff --git a/hw/xmir/dri2/dri2.c b/hw/xmir/dri2/dri2.c
+new file mode 100644
+index 0000000..6aa19ba
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/dri2/dri2.c
++++ b/hw/xmir/dri2/dri2.c
@@ -0,0 +1,1398 @@
+/*
+ * Copyright © 2007, 2008 Red Hat, Inc.
@@ -1624,10 +1628,11 @@ Index: xorg-server-1.17.2/hw/xmir/dri2/dri2.c
+ *is_param_recognized = FALSE;
+ return Success;
+}
-Index: xorg-server-1.17.2/hw/xmir/dri2/dri2.h
-===================================================================
+diff --git a/hw/xmir/dri2/dri2.h b/hw/xmir/dri2/dri2.h
+new file mode 100644
+index 0000000..318898b
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/dri2/dri2.h
++++ b/hw/xmir/dri2/dri2.h
@@ -0,0 +1,364 @@
+/*
+ * Copyright © 2007 Red Hat, Inc.
@@ -1993,10 +1998,11 @@ Index: xorg-server-1.17.2/hw/xmir/dri2/dri2.h
+extern Bool noDRI2Extension;
+
+#endif
-Index: xorg-server-1.17.2/hw/xmir/dri2/dri2ext.c
-===================================================================
+diff --git a/hw/xmir/dri2/dri2ext.c b/hw/xmir/dri2/dri2ext.c
+new file mode 100644
+index 0000000..befbb82
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/dri2/dri2ext.c
++++ b/hw/xmir/dri2/dri2ext.c
@@ -0,0 +1,683 @@
+/*
+ * Copyright © 2008 Red Hat, Inc.
@@ -2681,10 +2687,11 @@ Index: xorg-server-1.17.2/hw/xmir/dri2/dri2ext.c
+
+ DRI2ModuleSetup();
+}
-Index: xorg-server-1.17.2/hw/xmir/dri2/dri2int.h
-===================================================================
+diff --git a/hw/xmir/dri2/dri2int.h b/hw/xmir/dri2/dri2int.h
+new file mode 100644
+index 0000000..7f53eba
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/dri2/dri2int.h
++++ b/hw/xmir/dri2/dri2int.h
@@ -0,0 +1,26 @@
+/*
+ * Copyright © 2011 Daniel Stone
@@ -2712,11 +2719,12 @@ Index: xorg-server-1.17.2/hw/xmir/dri2/dri2int.h
+ */
+
+extern Bool DRI2ModuleSetup(void);
-Index: xorg-server-1.17.2/hw/xmir/xmir-cursor.c
-===================================================================
+diff --git a/hw/xmir/xmir-cursor.c b/hw/xmir/xmir-cursor.c
+new file mode 100644
+index 0000000..459f9ac
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/xmir-cursor.c
-@@ -0,0 +1,211 @@
++++ b/hw/xmir/xmir-cursor.c
+@@ -0,0 +1,214 @@
+/*
+ * Copyright © 2015 Canonical Ltd
+ *
@@ -2840,10 +2848,13 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-cursor.c
+ mir_buffer_stream_get_graphics_region(stream, ®ion);
+ }
+
-+ assert(cursor->bits->width * 4 == region.stride);
-+ if (cursor->bits->argb)
-+ memcpy(region.vaddr,
-+ cursor->bits->argb, cursor->bits->height * region.stride);
++ if (cursor->bits->argb) {
++ int y, stride;
++
++ stride = cursor->bits->width * 4;
++ for (y = 0; y < cursor->bits->height; y++)
++ memcpy(region.vaddr + y * region.stride, cursor->bits->argb + y * stride, stride);
++ }
+ else
+ expand_source_and_mask(cursor, region.vaddr);
+
@@ -2928,10 +2939,11 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-cursor.c
+ &xmir_pointer_sprite_funcs,
+ &xmir_pointer_screen_funcs, TRUE);
+}
-Index: xorg-server-1.17.2/hw/xmir/xmir-cvt.c
-===================================================================
+diff --git a/hw/xmir/xmir-cvt.c b/hw/xmir/xmir-cvt.c
+new file mode 100644
+index 0000000..6070d77
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/xmir-cvt.c
++++ b/hw/xmir/xmir-cvt.c
@@ -0,0 +1,304 @@
+/* Copied from hw/xfree86/modes/xf86cvt.c into xmir DDX and
+ * changed to generate an RRMode */
@@ -3237,10 +3249,11 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-cvt.c
+
+ return RRModeGet(&modeinfo, name);
+}
-Index: xorg-server-1.17.2/hw/xmir/xmir-dri2.c
-===================================================================
+diff --git a/hw/xmir/xmir-dri2.c b/hw/xmir/xmir-dri2.c
+new file mode 100644
+index 0000000..1f7c1b0
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/xmir-dri2.c
++++ b/hw/xmir/xmir-dri2.c
@@ -0,0 +1,529 @@
+/*
+ * Copyright © 2015 Canonical Ltd
@@ -3499,8 +3512,8 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-dri2.c
+ xmir_pixmap = xmir_pixmap_get(pixmap);
+
+ if (!xmir_pixmap) {
-+ unsigned short pitch;
-+ unsigned size;
++ CARD16 pitch;
++ CARD32 size;
+
+ ret->name = glamor_name_from_pixmap(pixmap, &pitch, &size);
+ ret->pitch = pitch;
@@ -3771,11 +3784,12 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-dri2.c
+ ret = DRI2ScreenInit(xmir_screen->screen, &xmir_screen->dri2);
+ return ret;
+}
-Index: xorg-server-1.17.2/hw/xmir/xmir-glamor.c
-===================================================================
+diff --git a/hw/xmir/xmir-glamor.c b/hw/xmir/xmir-glamor.c
+new file mode 100644
+index 0000000..83bd5cc
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/xmir-glamor.c
-@@ -0,0 +1,1187 @@
++++ b/hw/xmir/xmir-glamor.c
+@@ -0,0 +1,1184 @@
+/*
+ * Copyright © 2015 Canonical Ltd
+ *
@@ -4133,9 +4147,6 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-glamor.c
+ src_xscale, src_yscale,
+ box->x1 + dx, box->y1 + dy,
+ box->x2 + dx, box->y2 + dy,
-+#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,16,99,0,0)
-+ 1,
-+#endif
+ texcoords, 2);
+ glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
+
@@ -4963,10 +4974,11 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-glamor.c
+
+ return TRUE;
+}
-Index: xorg-server-1.17.2/hw/xmir/xmir-input.c
-===================================================================
+diff --git a/hw/xmir/xmir-input.c b/hw/xmir/xmir-input.c
+new file mode 100644
+index 0000000..855b6d3
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/xmir-input.c
++++ b/hw/xmir/xmir-input.c
@@ -0,0 +1,505 @@
+/*
+ * Copyright © 2015 Canonical Ltd
@@ -5473,10 +5485,11 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-input.c
+
+ mieqFini();
+}
-Index: xorg-server-1.17.2/hw/xmir/xmir-output.c
-===================================================================
+diff --git a/hw/xmir/xmir-output.c b/hw/xmir/xmir-output.c
+new file mode 100644
+index 0000000..f958e87
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/xmir-output.c
++++ b/hw/xmir/xmir-output.c
@@ -0,0 +1,444 @@
+/*
+ * Copyright © 2015 Canonical Ltd
@@ -5922,10 +5935,11 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-output.c
+
+ return TRUE;
+}
-Index: xorg-server-1.17.2/hw/xmir/xmir-thread-proxy.c
-===================================================================
+diff --git a/hw/xmir/xmir-thread-proxy.c b/hw/xmir/xmir-thread-proxy.c
+new file mode 100644
+index 0000000..6b16871
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/xmir-thread-proxy.c
++++ b/hw/xmir/xmir-thread-proxy.c
@@ -0,0 +1,132 @@
+/*
+ * Copyright © 2012-2015 Canonical Ltd
@@ -6059,11 +6073,12 @@ Index: xorg-server-1.17.2/hw/xmir/xmir-thread-proxy.c
+ free(msg);
+ }
+}
-Index: xorg-server-1.17.2/hw/xmir/xmir.c
-===================================================================
+diff --git a/hw/xmir/xmir.c b/hw/xmir/xmir.c
+new file mode 100644
+index 0000000..c07457d
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/xmir.c
-@@ -0,0 +1,983 @@
++++ b/hw/xmir/xmir.c
+@@ -0,0 +1,981 @@
+/*
+ * Copyright © 2015 Canonical Ltd
+ *
@@ -6184,9 +6199,7 @@ Index: xorg-server-1.17.2/hw/xmir/xmir.c
+ strcmp(argv[i], "-mir") == 0) {
+ return 2;
+ } else if (!strcmp(argv[i], "-novtswitch") ||
-+ !strncmp(argv[i], "vt", 2) ||
-+ /* bypass unity8 "security" */
-+ !strncmp(argv[i], "--desktop_file_hint=", strlen("--desktop_file_hint="))) {
++ !strncmp(argv[i], "vt", 2)) {
+ return 1;
+ } else if (!strcmp(argv[i], "-fd")) {
+ if (!seen_shared)
@@ -7047,10 +7060,11 @@ Index: xorg-server-1.17.2/hw/xmir/xmir.c
+ FatalError("Couldn't add screen\n");
+ }
+}
-Index: xorg-server-1.17.2/hw/xmir/xmir.h
-===================================================================
+diff --git a/hw/xmir/xmir.h b/hw/xmir/xmir.h
+new file mode 100644
+index 0000000..e43fa40
--- /dev/null
-+++ xorg-server-1.17.2/hw/xmir/xmir.h
++++ b/hw/xmir/xmir.h
@@ -0,0 +1,211 @@
+/*
+ * Copyright © 2015 Canonical Ltd
@@ -7263,3 +7277,6 @@ Index: xorg-server-1.17.2/hw/xmir/xmir.h
+ (((major) * 10000000) + ((minor) * 100000) + ((patch) * 1000) + snap)
+
+#endif
+--
+2.4.6
+
Reply to: