summaryrefslogtreecommitdiff
path: root/audio/amarok-kde4
diff options
context:
space:
mode:
Diffstat (limited to 'audio/amarok-kde4')
-rw-r--r--audio/amarok-kde4/files/patch-amarok_src_amarok__proxy.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/audio/amarok-kde4/files/patch-amarok_src_amarok__proxy.rb b/audio/amarok-kde4/files/patch-amarok_src_amarok__proxy.rb
new file mode 100644
index 000000000000..621471505cd7
--- /dev/null
+++ b/audio/amarok-kde4/files/patch-amarok_src_amarok__proxy.rb
@@ -0,0 +1,26 @@
+
+$FreeBSD$
+
+--- amarok/src/amarok_proxy.rb.orig
++++ amarok/src/amarok_proxy.rb
+@@ -117,6 +117,11 @@
+ def cp_to_empty_outward( income, output )
+ myputs "cp_to_empty_outward( income => #{income.inspect}, output => #{output.inspect}"
+ income.each_line do |data|
++ if data =~ /User-Agent: xine\/([0-9.]+)/
++ version = $1.split(".").collect { |v| v.to_i }
++ myputs("Found xine user agent version #{version.join(".")}")
++ @xineworkaround = ( version[0] <= 1 && version[1] <= 1 && version[2] <= 2 )
++ end
+ myputs( data )
+ data.chomp!
+ safe_write( output, data )
+@@ -142,7 +147,7 @@
+
+ def cp_all_inward( income, output )
+ myputs( "cp_all( income => #{income.inspect}, output => #{output.inspect}" )
+- if self.is_a?( LastFM ) and @engine == 'xine-engine'
++ if self.is_a?( LastFM ) and @xineworkaround
+ myputs( "Using buffer fill workaround." )
+ filler = Array.new( 4096, 0 )
+ safe_write( output, filler ) # HACK: Fill xine's buffer so that xine_open() won't block