[arch-commits] Commit in mpv/trunk (2 files)

Bartłomiej Piotrowski bpiotrowski at nymeria.archlinux.org
Thu Jan 2 08:50:45 UTC 2014


    Date: Thursday, January 2, 2014 @ 09:50:45
  Author: bpiotrowski
Revision: 103274

upgpkg: mpv 0.3.1-2

- backport commit fixing AudioCD support (FS#38321)

Added:
  mpv/trunk/mpv-0.3.1-always_respect_sector_size.patch
Modified:
  mpv/trunk/PKGBUILD

--------------------------------------------+
 PKGBUILD                                   |   13 +++++++---
 mpv-0.3.1-always_respect_sector_size.patch |   34 +++++++++++++++++++++++++++
 2 files changed, 44 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2014-01-02 00:34:19 UTC (rev 103273)
+++ PKGBUILD	2014-01-02 08:50:45 UTC (rev 103274)
@@ -4,7 +4,7 @@
 
 pkgname=mpv
 pkgver=0.3.1
-pkgrel=1
+pkgrel=2
 pkgdesc='Video player based on MPlayer/mplayer2'
 arch=('i686' 'x86_64')
 license=('GPL')
@@ -17,9 +17,16 @@
 makedepends=('mesa' 'python-docutils' 'waf')
 options=('!emptydirs' '!buildflags')
 install=mpv.install
-source=(https://github.com/mpv-player/$pkgname/archive/v$pkgver.tar.gz)
-md5sums=('f7e4091eb9ce058ce35b4bc1b6c4f3a2')
+source=(https://github.com/mpv-player/$pkgname/archive/v$pkgver.tar.gz
+        mpv-0.3.1-always_respect_sector_size.patch)
+md5sums=('f7e4091eb9ce058ce35b4bc1b6c4f3a2'
+         'afe01937e9bff1f241d37774eda39b7a')
 
+prepare() {
+  cd $pkgname-$pkgver
+  patch -p1 -i ../mpv-0.3.1-always_respect_sector_size.patch
+}
+
 build() {
   cd $pkgname-$pkgver
 

Added: mpv-0.3.1-always_respect_sector_size.patch
===================================================================
--- mpv-0.3.1-always_respect_sector_size.patch	                        (rev 0)
+++ mpv-0.3.1-always_respect_sector_size.patch	2014-01-02 08:50:45 UTC (rev 103274)
@@ -0,0 +1,34 @@
+From b04b48fc10dabb1d1b26ff519f55dcafb320985e Mon Sep 17 00:00:00 2001
+From: wm4 <wm4 at nowhere>
+Date: Thu, 2 Jan 2014 00:39:14 +0100
+Subject: [PATCH] stream: always respect sector_size, fixes cdda://
+
+Streams like CDDA have special requirements in what quantities data can
+be read: you can only read a sector at once, not more and not less. The
+stream_peek() function didn't respect that and set less (used internal
+buffer size of 2048 bytes, instead of CD sector size of 2352 bytes), so
+no data was read and EOF was accidentally set, making playback with
+cdda:// fail.
+
+This is a regression since commit 9a723f, but that commit merely exposed
+the issue (the redundant seek would clear the EOF flag).
+---
+ stream/stream.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/stream/stream.c b/stream/stream.c
+index 3332e66..b48de57 100644
+--- a/stream/stream.c
++++ b/stream/stream.c
+@@ -562,7 +562,7 @@ struct bstr stream_peek(stream_t *s, int len)
+         while (buf_valid < len) {
+             int chunk = MPMAX(len - buf_valid, STREAM_BUFFER_SIZE);
+             if (s->sector_size)
+-                chunk = STREAM_BUFFER_SIZE;
++                chunk = s->sector_size;
+             assert(buf_valid + chunk <= TOTAL_BUFFER_SIZE);
+             int read = stream_read_unbuffered(s, &s->buffer[buf_valid], chunk);
+             if (read == 0)
+-- 
+1.8.5.1
+




More information about the arch-commits mailing list