From c36c65416eeac788136b9e2c20484427b3ad8ddf Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sun, 15 Jan 2012 11:12:58 +0100 Subject: [PATCH] Fixed wrongfully displaying the length of a recording in the title of the replay progress display --- HISTORY | 4 +++- recording.c | 17 ++++++++++++----- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/HISTORY b/HISTORY index 343a930c..3f4949a5 100644 --- a/HISTORY +++ b/HISTORY @@ -6781,7 +6781,7 @@ Video Disk Recorder Revision History - Replaced all calls to sleep() with cCondWait::SleepMs() (thanks to Rolf Ahrenberg). - Fixed a crash with malformed SI data (patch from vdr-portal). -2012-01-14: Version 1.7.23 +2012-01-15: Version 1.7.23 - Removed the '.pl' suffix from svdrpsend.pl (sorry, I missed that one). - Fixed bonding more than two devices. @@ -6831,3 +6831,5 @@ Video Disk Recorder Revision History - The new setup option "Replay/Show remaining time" can be used to switch between showing the total length or the remaining time of the recording that is currently replayed. +- Fixed wrongfully displaying the length of a recording in the title of the replay + progress display. diff --git a/recording.c b/recording.c index cb4918e3..cf35bb7a 100644 --- a/recording.c +++ b/recording.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: recording.c 2.42 2012/01/14 12:50:58 kls Exp $ + * $Id: recording.c 2.43 2012/01/15 11:04:24 kls Exp $ */ #include "recording.h" @@ -873,16 +873,23 @@ const char *cRecording::Title(char Delimiter, bool NewIndicator, int Level) cons s++; else s = name; - titleBuffer = strdup(cString::sprintf("%02d.%02d.%02d%c%02d:%02d%c%d:%02d%c%c%s", + cString Length(""); + if (NewIndicator) { + int Seconds = max(0, LengthInSeconds()); + Length = cString::sprintf("%c%d:%02d", + Delimiter, + Seconds / 3600, + Seconds / 60 % 60 + ); + } + titleBuffer = strdup(cString::sprintf("%02d.%02d.%02d%c%02d:%02d%s%c%c%s", t->tm_mday, t->tm_mon + 1, t->tm_year % 100, Delimiter, t->tm_hour, t->tm_min, - Delimiter, - (LengthInSeconds() >= 0) ? LengthInSeconds() / 3600 : 0, - (LengthInSeconds() >= 0) ? LengthInSeconds() / 60 % 60 : 0, + *Length, New, Delimiter, s));