diff options
| author | Andreas Brachold <vdr07@deltab.de> | 2008-08-03 07:59:46 +0000 |
|---|---|---|
| committer | Andreas Brachold <vdr07@deltab.de> | 2008-08-03 07:59:46 +0000 |
| commit | 11ad754da4d127a74e26894e97c232a3a98972b5 (patch) | |
| tree | 16ce2a16765721824ce0a88dfd31d9ec4a2ed3ca /lib | |
| parent | 4b91bd9831af2f70a077918ab8bba4dc3d13c09c (diff) | |
| download | xxv-11ad754da4d127a74e26894e97c232a3a98972b5.tar.gz xxv-11ad754da4d127a74e26894e97c232a3a98972b5.tar.bz2 | |
* EPG: program callback hanged if channels empty
CHANNELS/STREAM: Fixed typo
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/XXV/MODULES/CHANNELS.pm | 4 | ||||
| -rw-r--r-- | lib/XXV/MODULES/EPG.pm | 21 | ||||
| -rw-r--r-- | lib/XXV/MODULES/STREAM.pm | 6 |
3 files changed, 19 insertions, 12 deletions
diff --git a/lib/XXV/MODULES/CHANNELS.pm b/lib/XXV/MODULES/CHANNELS.pm index 5da2811..64b2965 100644 --- a/lib/XXV/MODULES/CHANNELS.pm +++ b/lib/XXV/MODULES/CHANNELS.pm @@ -432,7 +432,7 @@ sub _readData { $dsth->execute($vid) or return error sprintf("Couldn't execute query: %s.",$dsth->errstr); - my $msg = gettext(sprintf("No channels on '%s' available!",$self->{svdrp}->hostname($vid))); + my $msg = sprintf(gettext("No channels on '%s' available!"),$self->{svdrp}->hostname($vid)); con_err($console,$msg); next; } @@ -1485,7 +1485,7 @@ ORDER BY push(@DVBCardsTyp,$source->[0]); } my $cards = join(',',@DVBCardsTyp); - lg sprintf("Founded sources of channels %s", $cards); + lg sprintf("Founded sources of channels : %s", $cards ? $cards : 'none'); return $cards; } diff --git a/lib/XXV/MODULES/EPG.pm b/lib/XXV/MODULES/EPG.pm index aeade79..4aef09e 100644 --- a/lib/XXV/MODULES/EPG.pm +++ b/lib/XXV/MODULES/EPG.pm @@ -790,7 +790,14 @@ sub program { my $self = shift || return error('No object defined!'); my $watcher = shift || return error('No watcher defined!'); my $console = shift || return error('No console defined!'); - my $cid = shift || $self->{dbh}->selectrow_arrayref("SELECT SQL_CACHE hash from CHANNELS order by vid, pos limit 1")->[0]; + my $cid = shift; + unless($cid) { + my $c = $self->{dbh}->selectrow_arrayref("SELECT SQL_CACHE hash from CHANNELS order by vid, pos limit 1"); + return $console->err(gettext("No channel available!")) + unless($c && $c->[0]); + $cid = $c->[0]; + } + my $cmod = main::getModule('CHANNELS'); @@ -1029,7 +1036,7 @@ AND e.starttime > NOW() my $cgroups = $cmod->ChannelGroupsArray('name'); my $cgrp = $param->{cgrp} || $cgroups->[0][1]; # First id of groups; - if($cgrp ne 'all') { + if($cgrp && $cgrp ne 'all') { my $cgrps; # Find any groups by same group name foreach my $g (@$cgroups) { @@ -1044,7 +1051,7 @@ AND e.starttime > NOW() foreach my $c (@$cgrps) { push(@{$term},$c->[0]); } - } else { # group id + } elsif($cgrp) { # group id $grpsql = " AND g.id = ? "; push(@{$term},$cgrp); } @@ -1236,7 +1243,7 @@ WHERE my $term; push(@{$term},$zeit); - if($cgrp ne 'all') { + if($cgrp && $cgrp ne 'all') { my $cgrps; # Find any groups by same group name foreach my $g (@$cgroups) { @@ -1251,7 +1258,7 @@ WHERE foreach my $c (@$cgrps) { push(@{$term},$c->[0]); } - } else { # group id + } elsif($cgrp) { # group id $sql .= " AND g.id = ? "; push(@{$term},$cgrp); } @@ -1478,7 +1485,7 @@ WHERE my $cgroups = $cmod->ChannelGroupsArray('name'); my $cgrp = $param->{cgrp} || $cgroups->[0][1]; # First id of groups; - if($cgrp ne 'all') { + if($cgrp && $cgrp ne 'all') { my $cgrps; # Find any groups by same group name foreach my $g (@$cgroups) { @@ -1493,7 +1500,7 @@ WHERE foreach my $c (@$cgrps) { push(@{$term},$c->[0]); } - } else { # group id + } elsif($cgrp) { # group id $sql .= " AND g.id = ? "; push(@{$term},$cgrp); } diff --git a/lib/XXV/MODULES/STREAM.pm b/lib/XXV/MODULES/STREAM.pm index 705abf6..9ce7ecd 100644 --- a/lib/XXV/MODULES/STREAM.pm +++ b/lib/XXV/MODULES/STREAM.pm @@ -278,7 +278,7 @@ sub playrecord { my $rmod = main::getModule('RECORDS'); my $result = $rmod->IdToData($recid) - or return $console->err(gettext(sprintf("Couldn't find recording: '%s'", $recid))); + or return $console->err(sprintf(gettext("Couldn't find recording: '%s'"), $recid)); my $start = 0; my $offset = 0; @@ -301,13 +301,13 @@ sub playrecord { return $console->player($data, $param); } - return $console->err(gettext(sprintf("Couldn't find recording: '%s'", $recid))) + return $console->err(sprintf(gettext("Couldn't find recording: '%s'"), $recid)) unless $result->{Path}; my $path = $result->{Path}; my @files = bsd_glob("$path/[0-9][0-9][0-9].vdr"); - return $console->err(gettext(sprintf("Couldn't find recording: '%s'", $recid))) + return $console->err(sprintf(gettext("Couldn't find recording: '%s'"), $recid)) unless scalar(@files); if($start) { |
