Base, YouTube: Do not use process persistent LWP::UserAgent objects, they accumulate...
authorRalf Ertzinger <ralf@skytale.net>
Sun, 12 Jun 2011 17:44:50 +0000 (19:44 +0200)
committerRalf Ertzinger <ralf@skytale.net>
Sun, 12 Jun 2011 17:44:50 +0000 (19:44 +0200)
videosite/Base.pm
videosite/YouTubeGrabber.pm

index 855cb47..67ca218 100644 (file)
@@ -12,8 +12,6 @@ sub new {
     my $class = shift;
     my $self = {'_DEBUG' => 0, '_OUT' => sub {print shift}};
     
-    $self->{_ua} = LWP::UserAgent->new('agent' => 'Mozilla/5.0', 'cookie_jar' => HTTP::Cookies->new);
-
     bless($self, $class);
 
     $self->_prepare_parameters();
@@ -174,4 +172,10 @@ sub setdebug {
     $self->{'_DEBUG'} = shift;
 }
 
+sub ua {
+    my $self = shift;
+
+    return LWP::UserAgent->new('agent' => 'Mozilla/5.0', 'cookie_jar' => HTTP::Cookies->new);
+}
+
 1;
index 8073237..ebb2f69 100644 (file)
@@ -93,7 +93,7 @@ sub _parse_by_video_info {
     my $quality = $self->_getval('QUALITY');
     my $metadata;
     my $videourl;
-    my $ua = $self->{_ua};
+    my $ua = $self->ua();
     my $preflist;
     my $r;
     my $content;
@@ -166,7 +166,7 @@ sub _parse_by_scrape {
     my $p;
     my $e;
     my $tag;
-    my $ua = $self->{_ua};
+    my $ua = $self->ua();
     my $r;
     my $videourl;
     my $quality = $self->_getval('QUALITY');