aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMihai Moldovan <ionic@ionic.de>2017-08-03 10:39:50 +0200
committerMihai Moldovan <ionic@ionic.de>2017-08-03 10:39:50 +0200
commit1077270f8ac6ffdfc0b5dd7693cfe0aad7169ad9 (patch)
tree81940082d1160b99047d3a47608875da221040d0
parentab2885575e5a6ef9ac1260107a39c2829baf1758 (diff)
downloadnx-libs-1077270f8ac6ffdfc0b5dd7693cfe0aad7169ad9.tar.gz
nx-libs-1077270f8ac6ffdfc0b5dd7693cfe0aad7169ad9.tar.bz2
nx-libs-1077270f8ac6ffdfc0b5dd7693cfe0aad7169ad9.zip
nx-X11: Render.c: Improve situation for multiple trapezoid requests.
Backported from Arctica GH 3.6.x branch. v2: backport to nx-libs 3.5.0.x (Mihai Moldovan) Adds: - debian/patches/1400_nx-X11_Render.c-Improve-situation-fo.full+lite.patch
-rw-r--r--debian/changelog5
-rw-r--r--debian/patches/1400_nx-X11_Render.c-Improve-situation-fo.full+lite.patch68
-rw-r--r--debian/patches/series1
3 files changed, 74 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
index 026f8d845..bd0f8ffbd 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -71,6 +71,11 @@ nx-libs (2:3.5.0.33-0x2go1) UNRELEASED; urgency=low
v2: backport to nx-libs 3.5.0.x (Mihai Moldovan)
Adds:
- debian/patches/1300_nxcomp_Set-TokenSize-to-1536-for-lin.full+lite.patch
+ * nx-X11: Render.c: Improve situation for multiple trapezoid requests.
+ Backported from Arctica GH 3.6.x branch.
+ v2: backport to nx-libs 3.5.0.x (Mihai Moldovan)
+ Adds:
+ - debian/patches/1400_nx-X11_Render.c-Improve-situation-fo.full+lite.patch
-- X2Go Release Manager <git-admin@x2go.org> Sat, 04 Jul 2015 06:29:19 +0200
diff --git a/debian/patches/1400_nx-X11_Render.c-Improve-situation-fo.full+lite.patch b/debian/patches/1400_nx-X11_Render.c-Improve-situation-fo.full+lite.patch
new file mode 100644
index 000000000..ca875f3cf
--- /dev/null
+++ b/debian/patches/1400_nx-X11_Render.c-Improve-situation-fo.full+lite.patch
@@ -0,0 +1,68 @@
+From da43f047a0d1f9e3a4850f3e8a15a67e81826dae Mon Sep 17 00:00:00 2001
+From: Oleksandr Shneyder <o.schneyder@phoca-gmbh.de>
+Date: Mon, 31 Jul 2017 13:20:12 +0200
+Subject: [PATCH] Render.c: Improve situation for multiple trapezoid requests.
+
+ This change improves the situation in nxagent for the following
+ issue:
+
+ ```
+ "XRenderCompositeTrapezoids builds RenderTrapezoids requests to composite the
+ specified list of trapezoids to dst. XRenderCompositeTrapezoids will split
+ the list of trapezoids to build requests no larger than the maximum request
+ size supported by the server. This can create rendering artifacts as the
+ precompositing done by RenderTrapezoids when a maskFormat is specified
+ cannot span multiple requests."
+ ```
+
+ For more information see:
+ https://lists.freedesktop.org/archives/xorg/2008-June/036124.html
+
+ Fixes ArcticaProject/nx-libs#336.
+
+ Backported from Arctica GH 3.6.x branch.
+
+ v2: backport to nx-libs 3.5.0.x (Mihai Moldovan)
+---
+ nx-X11/programs/Xserver/hw/nxagent/Render.c | 15 +--------------
+ 1 file changed, 1 insertion(+), 14 deletions(-)
+
+--- a/nx-X11/programs/Xserver/hw/nxagent/Render.c
++++ b/nx-X11/programs/Xserver/hw/nxagent/Render.c
+@@ -84,12 +84,6 @@ FIXME: Most operations don't seem to pro
+ #undef SKIP_REALLY_ALL_LOUSY_RENDER_OPERATIONS
+
+ /*
+- * Do we split the big trapezoid requests?
+- */
+-
+-#define TRAPEZOIDS_PER_REQUEST 256
+-
+-/*
+ * Margin added around the glyphs extent (in pixels).
+ */
+
+@@ -1798,8 +1792,6 @@ FIXME: Is this useful or just a waste of
+ nxagentSynchronizeBox(pDst -> pDrawable, nxagentTrapezoidExtents, NEVER_BREAK);
+ }
+
+- while (remaining > 0)
+- {
+ XRenderCompositeTrapezoids(nxagentDisplay,
+ op,
+ nxagentPicturePriv(pSrc) -> picture,
+@@ -1807,13 +1799,8 @@ FIXME: Is this useful or just a waste of
+ pForm,
+ xSrc,
+ ySrc,
+- (XTrapezoid *) current,
+- (remaining > TRAPEZOIDS_PER_REQUEST ?
+- TRAPEZOIDS_PER_REQUEST : remaining));
++ (XTrapezoid *) current,remaining);
+
+- remaining -= TRAPEZOIDS_PER_REQUEST;
+- current += TRAPEZOIDS_PER_REQUEST;
+- }
+
+ #endif
+
diff --git a/debian/patches/series b/debian/patches/series
index 988e11643..c475dc72f 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -149,6 +149,7 @@
1260_nx-X11_xserver-Avoid-sending-uninitialized-padd.full.patch
1270_nx-X11_CVE-2017-2624-Use-timingsafe_memcmp-to-c.full.patch
1300_nxcomp_Set-TokenSize-to-1536-for-lin.full+lite.patch
+1400_nx-X11_Render.c-Improve-situation-fo.full+lite.patch
9900-dxpc-license-history.full+lite.patch
0016_nx-X11_install-location.debian.patch
0102_xserver-xext_set-securitypolicy-path.debian.patch