diff --git a/extra/ffmpeg/PKGBUILD b/extra/ffmpeg/PKGBUILD index f6e05187c..ad753ebe1 100644 --- a/extra/ffmpeg/PKGBUILD +++ b/extra/ffmpeg/PKGBUILD @@ -9,7 +9,7 @@ pkgname=ffmpeg pkgver=2.6.3 -pkgrel=1 +pkgrel=2 epoch=1 pkgdesc='Complete and free Internet live audio and video broadcasting solution' arch=('i686' 'x86_64') @@ -23,10 +23,17 @@ depends=( 'libvorbisenc.so' 'libvorbis.so' 'libvpx.so' 'libx264.so' 'libx265.so' ) makedepends=('libvdpau' 'yasm' 'hardening-wrapper') -source=(http://ffmpeg.org/releases/$pkgname-$pkgver.tar.bz2{,.asc}) +source=(http://ffmpeg.org/releases/$pkgname-$pkgver.tar.bz2{,.asc} + ffmpeg-2.6.3-lavd-xcbgrab-fix-comparison-with-screen-size.patch) validpgpkeys=('FCF986EA15E6E293A5644F10B4322F04D67658D8') # ffmpeg-devel md5sums=('e2cc3c209f91393d35ab58598e41cf22' - 'SKIP') + 'SKIP' + 'ac9f115dced48b66e36249349a29347e') + +prepare() { + cd $pkgname-$pkgver + patch -p1 -i ../ffmpeg-2.6.3-lavd-xcbgrab-fix-comparison-with-screen-size.patch +} build() { cd $pkgname-$pkgver diff --git a/extra/ffmpeg/ffmpeg-2.6.3-lavd-xcbgrab-fix-comparison-with-screen-size.patch b/extra/ffmpeg/ffmpeg-2.6.3-lavd-xcbgrab-fix-comparison-with-screen-size.patch new file mode 100644 index 000000000..623b138dc --- /dev/null +++ b/extra/ffmpeg/ffmpeg-2.6.3-lavd-xcbgrab-fix-comparison-with-screen-size.patch @@ -0,0 +1,29 @@ +From 7971fa9ce0ead8d2e8a79dbe422e91dcef8222ba Mon Sep 17 00:00:00 2001 +From: Nicolas George +Date: Wed, 6 May 2015 11:53:19 +0200 +Subject: [PATCH] lavd/xcbgrab: fix comparison with screen size. + +Signed-off-by: Nicolas George +Signed-off-by: Michael Niedermayer +--- + libavdevice/xcbgrab.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libavdevice/xcbgrab.c b/libavdevice/xcbgrab.c +index 15512cd..166575c 100644 +--- a/libavdevice/xcbgrab.c ++++ b/libavdevice/xcbgrab.c +@@ -533,8 +533,8 @@ static int create_stream(AVFormatContext *s) + gc = xcb_get_geometry(c->conn, c->screen->root); + geo = xcb_get_geometry_reply(c->conn, gc, NULL); + +- if (c->x + c->width >= geo->width || +- c->y + c->height >= geo->height) { ++ if (c->x + c->width > geo->width || ++ c->y + c->height > geo->height) { + av_log(s, AV_LOG_ERROR, + "Capture area %dx%d at position %d.%d " + "outside the screen size %dx%d\n", +-- +1.7.10.4 +