summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDieter Hametner <dh (plus) vdr (at) gekrumbel (dot) de>2008-03-21 23:39:29 +0100
committerDieter Hametner <dh (plus) vdr (at) gekrumbel (dot) de>2008-03-21 23:39:29 +0100
commitd1114a3065afa5178b2911691aa2f9bbe1c2d62b (patch)
treed8346baf034cb456a056a80de65cb6f2eb22b53d
parentf13377e3509cc8d4420473c3c5da6a9e6aa0afef (diff)
parentd08a134e8d0668ba3961041b02297d308e2f9f93 (diff)
downloadvdr-plugin-live-d1114a3065afa5178b2911691aa2f9bbe1c2d62b.tar.gz
vdr-plugin-live-d1114a3065afa5178b2911691aa2f9bbe1c2d62b.tar.bz2
Merge commit 'winni/master'
-rw-r--r--pages/searchresults.ecpp6
-rw-r--r--tools.cpp16
2 files changed, 14 insertions, 8 deletions
diff --git a/pages/searchresults.ecpp b/pages/searchresults.ecpp
index dce7520..0cf1e2c 100644
--- a/pages/searchresults.ecpp
+++ b/pages/searchresults.ecpp
@@ -61,8 +61,10 @@ bool logged_in(false);
string current_day = "";
for (SearchResults::iterator result = results.begin(); result != results.end(); ++result) {
- string channelname = Channels.GetByChannelID(result->Channel())->Name();
- int channelnr = Channels.GetByChannelID(result->Channel())->Number();
+ cChannel* channel = Channels.GetByChannelID(result->Channel());
+ if (!channel) continue;
+ string channelname = channel->Name();
+ int channelnr = channel->Number();
string start(result->StartTime() ? FormatDateTime(tr("%I:%M %p"), result->StartTime()) : "");
string end(result->StopTime() ? FormatDateTime(tr("%I:%M %p"), result->StopTime()) : "");
string day(result->StartTime() ? FormatDateTime(tr("%A, %b %d %Y"), result->StartTime()) : "");
diff --git a/tools.cpp b/tools.cpp
index 1839f6b..3a80ff7 100644
--- a/tools.cpp
+++ b/tools.cpp
@@ -17,12 +17,16 @@ using namespace tnt;
istream& operator>>( istream& is, tChannelID& ret )
{
- if ( is.rdbuf()->in_avail() > 0 ) {
- string line;
- if ( !getline( is, line ) || ( !line.empty() && !( ret = tChannelID::FromString( line.c_str() ) ).Valid() ) )
- is.setstate( ios::badbit );
- }
- return is;
+ string line;
+ if ( !getline( is, line ) ) {
+ if ( !is.eof() )
+ is.setstate( ios::badbit );
+ return is;
+ }
+
+ if ( !line.empty() && !( ret = tChannelID::FromString( line.c_str() ) ).Valid() )
+ is.setstate( ios::badbit );
+ return is;
}
namespace vdrlive {