summaryrefslogtreecommitdiff
path: root/extra/source/tigervnc/patches/tigervnc-support-xorg120.patch
diff options
context:
space:
mode:
Diffstat (limited to 'extra/source/tigervnc/patches/tigervnc-support-xorg120.patch')
-rw-r--r--extra/source/tigervnc/patches/tigervnc-support-xorg120.patch58
1 files changed, 58 insertions, 0 deletions
diff --git a/extra/source/tigervnc/patches/tigervnc-support-xorg120.patch b/extra/source/tigervnc/patches/tigervnc-support-xorg120.patch
new file mode 100644
index 00000000..dcb50db9
--- /dev/null
+++ b/extra/source/tigervnc/patches/tigervnc-support-xorg120.patch
@@ -0,0 +1,58 @@
+diff --git a/unix/xserver/hw/vnc/xorg-version.h b/unix/xserver/hw/vnc/xorg-version.h
+index 9d1c0eb..79ff79a 100644
+--- a/unix/xserver/hw/vnc/xorg-version.h
++++ b/unix/xserver/hw/vnc/xorg-version.h
+@@ -52,8 +52,10 @@
+ #define XORG 118
+ #elif XORG_VERSION_CURRENT < ((1 * 10000000) + (19 * 100000) + (99 * 1000))
+ #define XORG 119
++#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (20 * 100000) + (99 * 1000))
++#define XORG 120
+ #else
+-#error "X.Org newer than 1.19 is not supported"
++#error "X.Org newer than 1.20 is not supported"
+ #endif
+
+ #endif
+diff --git a/unix/xserver/hw/vnc/xvnc.c b/unix/xserver/hw/vnc/xvnc.c
+index 93d8af4..1517809 100644
+--- a/unix/xserver/hw/vnc/xvnc.c
++++ b/unix/xserver/hw/vnc/xvnc.c
+@@ -202,6 +202,7 @@ vfbBitsPerPixel(int depth)
+
+ static void vfbFreeFramebufferMemory(vfbFramebufferInfoPtr pfb);
+
++#if XORG < 120
+ #ifdef DPMSExtension
+ /* Why support DPMS? Because stupid modern desktop environments
+ such as Unity 2D on Ubuntu 11.10 crashes if DPMS is not
+@@ -219,6 +220,7 @@ Bool DPMSSupported(void)
+ return FALSE;
+ }
+ #endif
++#endif
+
+ #if XORG < 111
+ void ddxGiveUp()
+@@ -1491,6 +1491,12 @@ vfbCloseScreen(ScreenPtr pScreen)
+ #endif
+ }
+
++#if XORG >= 120
++static void vncDPMS(ScreenPtr pScreen, int level)
++{
++}
++#endif
++
+ static Bool
+ #if XORG < 113
+ vfbScreenInit(int index, ScreenPtr pScreen, int argc, char **argv)
+@@ -1661,6 +1667,9 @@ vfbScreenInit(ScreenPtr pScreen, int arg
+ if (!ret) return FALSE;
+ #endif
+
++#if XORG >= 120
++ pScreen->DPMS = vncDPMS;
++#endif
+
+ return TRUE;