summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2012-06-15 07:19:51 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2012-06-15 07:19:51 +0000
commit70ba47405dd4d9908019beeed4afedfdb622ce38 (patch)
treea46551371e9bc617725cf26077d4c9de87f142f6 /dev-ruby/archive-tar-minitar
parentmarked x86 per bug 416215 (diff)
downloadgentoo-2-70ba47405dd4d9908019beeed4afedfdb622ce38.tar.gz
gentoo-2-70ba47405dd4d9908019beeed4afedfdb622ce38.tar.bz2
gentoo-2-70ba47405dd4d9908019beeed4afedfdb622ce38.zip
Add patch to fix minitar's reader on non-seekable streams.
(Portage version: 2.2.0_alpha110/cvs/Linux x86_64)
Diffstat (limited to 'dev-ruby/archive-tar-minitar')
-rw-r--r--dev-ruby/archive-tar-minitar/ChangeLog9
-rw-r--r--dev-ruby/archive-tar-minitar/archive-tar-minitar-0.5.3-r1.ebuild30
-rw-r--r--dev-ruby/archive-tar-minitar/files/archive-tar-minitar-0.5.3-pipes.patch44
3 files changed, 82 insertions, 1 deletions
diff --git a/dev-ruby/archive-tar-minitar/ChangeLog b/dev-ruby/archive-tar-minitar/ChangeLog
index 7176d8311ff9..dd7a4578e4b7 100644
--- a/dev-ruby/archive-tar-minitar/ChangeLog
+++ b/dev-ruby/archive-tar-minitar/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-ruby/archive-tar-minitar
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-ruby/archive-tar-minitar/ChangeLog,v 1.34 2012/06/15 06:56:40 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-ruby/archive-tar-minitar/ChangeLog,v 1.35 2012/06/15 07:19:51 flameeyes Exp $
+
+*archive-tar-minitar-0.5.3-r1 (15 Jun 2012)
+
+ 15 Jun 2012; Diego E. Pettenò <flameeyes@gentoo.org>
+ +archive-tar-minitar-0.5.3-r1.ebuild,
+ +files/archive-tar-minitar-0.5.3-pipes.patch:
+ Add patch to fix minitar's reader on non-seekable streams.
*archive-tar-minitar-0.5.3 (15 Jun 2012)
diff --git a/dev-ruby/archive-tar-minitar/archive-tar-minitar-0.5.3-r1.ebuild b/dev-ruby/archive-tar-minitar/archive-tar-minitar-0.5.3-r1.ebuild
new file mode 100644
index 000000000000..7275a1e860a1
--- /dev/null
+++ b/dev-ruby/archive-tar-minitar/archive-tar-minitar-0.5.3-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-ruby/archive-tar-minitar/archive-tar-minitar-0.5.3-r1.ebuild,v 1.1 2012/06/15 07:19:51 flameeyes Exp $
+
+EAPI=4
+USE_RUBY="ruby18 ree18 ruby19 jruby"
+
+RUBY_FAKEGEM_NAME="minitar"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README ChangeLog"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides POSIX tarchive management from Ruby programs."
+HOMEPAGE="http://rubyforge.org/projects/ruwiki/"
+
+LICENSE="|| ( GPL-2 Ruby )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RESTRICT="test"
+
+RUBY_PATCHES=(
+ ${PN}-0.5.2-gentoo.patch
+ ${P}-pipes.patch
+)
diff --git a/dev-ruby/archive-tar-minitar/files/archive-tar-minitar-0.5.3-pipes.patch b/dev-ruby/archive-tar-minitar/files/archive-tar-minitar-0.5.3-pipes.patch
new file mode 100644
index 000000000000..27b626869f48
--- /dev/null
+++ b/dev-ruby/archive-tar-minitar/files/archive-tar-minitar-0.5.3-pipes.patch
@@ -0,0 +1,44 @@
+Index: minitar-0.5.3/lib/archive/tar/minitar.rb
+===================================================================
+--- minitar-0.5.3.orig/lib/archive/tar/minitar.rb
++++ minitar-0.5.3/lib/archive/tar/minitar.rb
+@@ -486,7 +486,11 @@ module Archive::Tar::Minitar
+ @devminor = header.devminor
+ @prefix = header.prefix
+ @read = 0
+- @orig_pos = @io.pos
++ begin
++ @orig_pos = @io.pos
++ rescue Errno::ESPIPE
++ @orig_pos = 0
++ end
+ end
+
+ # Reads +len+ bytes (or all remaining data) from the entry. Returns
+@@ -585,7 +589,11 @@ module Archive::Tar::Minitar
+ # Creates and returns a new Reader object.
+ def initialize(anIO)
+ @io = anIO
+- @init_pos = anIO.pos
++ begin
++ @init_pos = @io.pos
++ rescue Errno::ESPIPE
++ @init_pos = 0
++ end
+ end
+
+ # Iterates through each entry in the data stream.
+@@ -621,10 +629,10 @@ module Archive::Tar::Minitar
+
+ skip = (512 - (size % 512)) % 512
+
+- if @io.respond_to?(:seek)
+- # avoid reading...
++ begin
++ # avoid reading...
+ @io.seek(size - entry.bytes_read, IO::SEEK_CUR)
+- else
++ rescue Errno::ESPIPE, NoMethodError
+ pending = size - entry.bytes_read
+ while pending > 0
+ bread = @io.read([pending, 4096].min).size