diff options
author | root <root@rshg054.dnsready.net> | 2013-02-09 00:07:22 -0800 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2013-02-09 00:07:22 -0800 |
commit | e9c244cac8e5dc1c59c7e8b7bc885fef04224b70 (patch) | |
tree | 64f1532d7e6e652c2ea5a0bb5efd7ea36f431535 /extra/r | |
parent | 7c92c5fcfb5653f63243842299e413672653d1ad (diff) |
Sat Feb 9 00:07:22 PST 2013
Diffstat (limited to 'extra/r')
-rw-r--r-- | extra/r/PKGBUILD | 13 | ||||
-rw-r--r-- | extra/r/x11.patch | 36 |
2 files changed, 45 insertions, 4 deletions
diff --git a/extra/r/PKGBUILD b/extra/r/PKGBUILD index 2c63cf703..693f2904a 100644 --- a/extra/r/PKGBUILD +++ b/extra/r/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 173847 2012-12-25 00:34:38Z foutrelis $ +# $Id: PKGBUILD 177618 2013-02-08 07:48:31Z ronald $ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor: Damir Perisa <damir.perisa@bluewin.ch> # Contributor: K. Piche <kpiche@rogers.com> pkgname=r pkgver=2.15.2 -pkgrel=2 +pkgrel=3 pkgdesc="Language and environment for statistical computing and graphics" arch=('i686' 'x86_64') license=('GPL') @@ -20,12 +20,14 @@ options=('!makeflags' '!emptydirs') source=("http://cran.r-project.org/src/base/R-2/R-${pkgver}.tar.gz" 'r.desktop' 'r.png' - 'R.conf') + 'R.conf' + 'x11.patch') install=r.install sha1sums=('c80da687d66ee88d1e34fc1ae5c1bd525f9513dd' '13aa29219bcaa102e575de8c1c8e0833d233e836' 'a69a07ec363440efc18ce0a7f2af103375dea978' - '43668da6cfd1b4455a99f23e79e2059294dddac9') + '43668da6cfd1b4455a99f23e79e2059294dddac9' + 'a11b91d53645bd545fddc382c991096502e8ac67') build() { cd "${srcdir}/R-${pkgver}" @@ -34,6 +36,9 @@ build() { # set texmf dir correctly in makefile sed -i 's|$(rsharedir)/texmf|${datarootdir}/texmf|' share/Makefile.in + # upstream patch fixing empty plots FS#32597 + patch -Np0 -i ${srcdir}/x11.patch + ./configure --prefix=/usr \ --libdir=/usr/lib \ --sysconfdir=/etc/R \ diff --git a/extra/r/x11.patch b/extra/r/x11.patch new file mode 100644 index 000000000..3a02b28ea --- /dev/null +++ b/extra/r/x11.patch @@ -0,0 +1,36 @@ +--- src/modules/X11/devX11.c (révision 61681) ++++ src/modules/X11/devX11.c (révision 61682) +@@ -244,6 +244,7 @@ + { + if(inclose || !xd || !xd->buffered || xd->holdlevel > 0) return; + cairo_paint(xd->xcc); ++ cairo_surface_flush(xd->xcs); + if (xd->type == WINDOW) XDefineCursor(display, xd->window, arrow_cursor); + XSync(display, 0); + xd->last = currentTime(); +@@ -753,8 +754,10 @@ + #ifdef HAVE_WORKING_CAIRO + pX11Desc xd = (pX11Desc) dd->deviceSpecific; + /* We can use the buffered copy where we have it */ +- if(xd->buffered == 1) cairo_paint(xd->xcc); +- else if (xd->buffered > 1) ++ if(xd->buffered == 1) { ++ cairo_paint(xd->xcc); ++ cairo_surface_flush(xd->xcs); ++ } else if (xd->buffered > 1) + /* rely on timer to repaint eventually */ + xd->last_activity = currentTime(); + else +@@ -2691,7 +2694,11 @@ + Cairo_update(xd); + return; + } +- if(xd->buffered) cairo_paint(xd->xcc); ++ if(xd->buffered) { ++ cairo_paint(xd->xcc); ++ cairo_surface_flush(xd->xcs); ++ } ++ + #endif + if(xd->type==WINDOW) XDefineCursor(display, xd->window, arrow_cursor); + XSync(display, 0); |