diff options
author | Brian P. Hinz <bphinz@users.sf.net> | 2014-12-26 00:53:33 -0500 |
---|---|---|
committer | Brian P. Hinz <bphinz@users.sf.net> | 2014-12-26 01:17:12 -0500 |
commit | f882232f81c270eee49c673b69b1797bdd6fb2f7 (patch) | |
tree | 27f4a287f76a4c1160aa73ef1d65832731f14c49 /contrib/packages/rpm/sle11/SOURCES/confine_to_shape.diff | |
parent | 5aa7cfa17c6a535f05da216fb7fbd70e2c23c8d8 (diff) | |
download | tigervnc-f882232f81c270eee49c673b69b1797bdd6fb2f7.tar.gz tigervnc-f882232f81c270eee49c673b69b1797bdd6fb2f7.zip |
Remove support for openSUSE 11.4
Project Evergreen stopped supporting 11.4 in October and it's not feasible to
back-port the patches for the Xorg 2014-12-09 CVEs, so as a result we can no
longer provide pre-built packages for this distribution. The genric binaries
can be used instead.
(cherry picked from commit f2079c0e421b9b951f4e6c72bcdeded8b804f1df)
Diffstat (limited to 'contrib/packages/rpm/sle11/SOURCES/confine_to_shape.diff')
-rw-r--r-- | contrib/packages/rpm/sle11/SOURCES/confine_to_shape.diff | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/contrib/packages/rpm/sle11/SOURCES/confine_to_shape.diff b/contrib/packages/rpm/sle11/SOURCES/confine_to_shape.diff deleted file mode 100644 index 1e4ddad3..00000000 --- a/contrib/packages/rpm/sle11/SOURCES/confine_to_shape.diff +++ /dev/null @@ -1,108 +0,0 @@ -Index: dix/events.c -================================================================================ ---- dix/events.c -+++ dix/events.c -@@ -661,37 +661,80 @@ - { - BoxRec box; - int x = *px, y = *py; -- int incx = 1, incy = 1; - SpritePtr pSprite; -+ int nbox; -+ BoxPtr pbox; -+ int d, min = (~0U >> 1), dx2, dy2, x_r, y_r; - - pSprite = pDev->spriteInfo->sprite; - if (RegionContainsPoint(shape, x, y, &box)) - return; -- box = *RegionExtents(shape); -- /* this is rather crude */ -- do { -- x += incx; -- if (x >= box.x2) -- { -- incx = -1; -- x = *px - 1; -+ -+ for (nbox = REGION_NUM_RECTS (shape), -+ pbox = REGION_RECTS(shape); -+ nbox--; -+ pbox++) -+ { -+ if (pbox->x1 < x && pbox->x2 > x) { -+ d = pbox->y1 - y; -+ if (d >= 0) { -+ d *= d; -+ if (d < min) { -+ *px = x; -+ *py = pbox->y1 + 1; -+ min = d; -+ } -+ } else { -+ d = pbox->y2 - y; d *= d; -+ if (d < min) { -+ *px = x; -+ *py = pbox->y2 - 1; -+ min = d; -+ } -+ } - } -- else if (x < box.x1) -- { -- incx = 1; -- x = *px; -- y += incy; -- if (y >= box.y2) -- { -- incy = -1; -- y = *py - 1; -+ else if (pbox->y1 < y && pbox->y2 > y) { -+ d = pbox->x1 - x; -+ if (d >= 0) { -+ d *= d; -+ if (d < min) { -+ *px = pbox->x1 + 1; -+ *py = y; -+ min = d; -+ } -+ } else { -+ d = pbox->x2 - x; d *= d; -+ if (d < min) { -+ *px = pbox->x2 - 1; -+ *py = y; -+ min = d; -+ } -+ } -+ -+ } else { -+ dx2 = pbox->x1 - x; -+ if (dx2 >= 0) { -+ dx2 *= dx2; -+ x_r = pbox->x1 + 1; -+ } else { -+ dx2 = pbox->x2 - x; dx2 *= dx2; -+ x_r = pbox->x2 - 1; -+ } -+ dy2 = pbox->y1 - y; -+ if (dy2 >= 0) { -+ dy2 *= dy2; -+ y_r = pbox->y1 + 1; -+ } else { -+ dy2 = pbox->y2 - y; dy2 *= dy2; -+ y_r = pbox->y2 - 1; -+ } -+ if ((d = dx2 + dy2) < min) { -+ *px = x_r; -+ *py = y_r; -+ min = d; - } -- else if (y < box.y1) -- return; /* should never get here! */ - } -- } while (!RegionContainsPoint(shape, x, y, &box)); -- *px = x; -- *py = y; -+ } - } - - static void |