[X2Go-Commits] [nx-libs] 03/03: nx-X11: Render.c: Improve situation for multiple trapezoid requests.

git-admin at x2go.org git-admin at x2go.org
Thu Aug 3 10:41:39 CEST 2017


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch master
in repository nx-libs.

commit 1077270f8ac6ffdfc0b5dd7693cfe0aad7169ad9
Author: Mihai Moldovan <ionic at ionic.de>
Date:   Thu Aug 3 10:39:50 2017 +0200

    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
---
 debian/changelog                                   |  5 ++
 ...1_Render.c-Improve-situation-fo.full+lite.patch | 68 ++++++++++++++++++++++
 debian/patches/series                              |  1 +
 3 files changed, 74 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 026f8d8..bd0f8ff 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 at 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 0000000..ca875f3
--- /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 at 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 988e116..c475dc7 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

--
Alioth's /srv/git/code.x2go.org/nx-libs.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git


More information about the x2go-commits mailing list