1 # (c) 2007 by Ralf Ertzinger <ralf@camperquake.de>
2 # 2015 by Christian Garbs <mitch@cgarbs.de>
4 # licensed under GNU GPL v2
6 # A getter which will download the media to a local file storage
10 package videosite::AsyncFileGetter;
12 use videosite::FileGetter;
13 @ISA = qw(videosite::FileGetter);
19 my $self = $class->SUPER::new(
20 NAME => 'asyncfilegetter',
24 return bless($self, $class);
37 if ($child_pid) { # parent
38 $self->debug('parent spawned process %d for download', $child_pid);
39 if (exists $self->{_API}->{wait_for_child}) {
40 $self->debug('calling wait_for_child on %d', $child_pid);
41 $self->{_API}->{wait_for_child}->($child_pid);
43 Irssi::pidwait_add($child_pid);
45 elsif (defined $child_pid) { # child
49 $self->debug('CHILD: start download');
50 $self->SUPER::_download($dlurl, $dlfile, $video);
51 $self->debug('CHILD: end download');
53 $self->debug('CHILD: AFTER EXIT? WTF!');