This patch has been incorporated into the get_iplayer Git repo.
Instructions for updating are here:

https://github.com/dinkypumpkin/get_iplayer/wiki/instructions

Commit message and patch follow:

When populating programme data from an in-memory cache, get_iplayer was
only copying PID strings rather than references to objects containing
full programme data.  Under some circumstances when running PVR searches,
this would lead to the fatal error:

Can't use string ("b123x45y") as a HASH ref while "strict refs" in use
---
 get_iplayer |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/get_iplayer b/get_iplayer
index c7322d4..6b21c5d 100755
--- a/get_iplayer
+++ b/get_iplayer
@@ -1518,8 +1518,8 @@ sub get_links {
                        $prog->{$pid} = progclass( 
lc($memcache->{$prog_type}->{$pid}->{type}) )->new( 'pid' => $pid );
                        # Deep-copy of elements in memcache prog instance to 
%prog
                        $prog->{$pid}->{$_} = 
$memcache->{$prog_type}->{$pid}->{$_} for @cache_format;
-                       # Copy pid into index_prog hash
-                       $index_prog->{ $prog->{$pid}->{index} } = $pid;
+                       # Copy object reference into index_prog hash
+                       $index_prog->{ $prog->{$pid}->{index} } = $prog->{$pid};
                }
                logger "INFO: Got (quick) ".(keys %{ $memcache->{$prog_type} 
})." memcache entries for $prog_type\n" if $opt->{verbose};
                return 0;
-- 
1.7.8.3


_______________________________________________
get_iplayer mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/get_iplayer

Reply via email to