aboutsummaryrefslogtreecommitdiff
path: root/debian/patches/1253_nx-X11_randr-check-for-virtual-size-limits-befo.full.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/1253_nx-X11_randr-check-for-virtual-size-limits-befo.full.patch')
-rw-r--r--debian/patches/1253_nx-X11_randr-check-for-virtual-size-limits-befo.full.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/debian/patches/1253_nx-X11_randr-check-for-virtual-size-limits-befo.full.patch b/debian/patches/1253_nx-X11_randr-check-for-virtual-size-limits-befo.full.patch
new file mode 100644
index 000000000..d89432cef
--- /dev/null
+++ b/debian/patches/1253_nx-X11_randr-check-for-virtual-size-limits-befo.full.patch
@@ -0,0 +1,41 @@
+commit da678db0ef57c45f1bbe1c0e8f14da70746ed2cd
+Author: Tiago Vignatti <tiago.vignatti@nokia.com>
+Date: Fri Dec 17 16:09:35 2010 +0200
+
+ Backport: randr: check for virtual size limits before set crtc
+
+ Return a error if the screen is configured to an invalid size.
+
+ Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
+ Reviewed-by: Adam Jackson <ajax@redhat.com>
+ Reviewed-by: Daniel Stone <daniel@fooishbar.org>
+ Signed-off-by: Keith Packard <keithp@keithp.com>
+
+ Backported from Arctica GH 3.6.x branch.
+
+ v2: backport to nx-libs 3.6.x (Ulrich Sibiller)
+ v3: backport to nx-libs 3.5.0.x (Mihai Moldovan)
+
+diff --git a/nx-X11/programs/Xserver/randr/rrscreen.c b/nx-X11/programs/Xserver/randr/rrscreen.c
+index 9b3935e..9bea97b 100644
+--- a/nx-X11/programs/Xserver/randr/rrscreen.c
++++ b/nx-X11/programs/Xserver/randr/rrscreen.c
+@@ -938,6 +938,18 @@ ProcRRSetScreenConfig (ClientPtr client)
+ width = mode->mode.height;
+ height = mode->mode.width;
+ }
++
++ if (width < pScrPriv->minWidth || pScrPriv->maxWidth < width) {
++ client->errorValue = width;
++ free(pData);
++ return BadValue;
++ }
++ if (height < pScrPriv->minHeight || pScrPriv->maxHeight < height) {
++ client->errorValue = height;
++ free(pData);
++ return BadValue;
++ }
++
+ if (width != pScreen->width || height != pScreen->height)
+ {
+ int c;