From 49b561fcad16d3315fce8cb854de9f4ee6156640 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sun, 26 Mar 2006 19:00:00 +0200 Subject: Version 1.3.45 - Fixed updating the "Info" button in the "Timers" menu. - Reduced the number of events to actually check when setting events to timers. - cMenuEditIntItem now checks the given value and forces it to be between the given min and max limits. - The status changes of EPG events are now logged for all channels that have timers. - Removed the log message "deleting plugin: ..." when shutting down VDR (thanks to Christoph Haubrich for reporting that this is irritating when calling "vdr --help"). - Fixed cReadLine::Read() for lines that end with the infamous "\r\n" (thanks to Rolf Ahrenberg). - Fixed cDvbDevice::SetAudioBypass() in case setTransferModeForDolbyDigital is false (thanks to Werner Fink). - Updated 'sources.conf' (thanks to Oleg Roitburd). - Fixed the shutdown timeout (thanks to Alexander Wenzel). - Only calling RemoveEmptyVideoDirectories() once in case a recording has been deleted (reported by Hardy Flor). - Fixed deleting recordings that have been removed externally when running out of disk space (reported by Jan Lenz). - Fixed handling repeating VPS timers (they stopped recording too early). - Timer log messages now show "VPS" if this is a VPS timer. - Fixed getting the present EPG event in case none is currently 'running' (it then returns the one that just ended). - Fixed calling a plugin's main menu function while a message is being displayed (reported by Helmut Auer). - Updated the Russian OSD texts (thanks to Oleg Roitburd). - Made cMenuRecordings::GetRecording() 'protected' (suggested by Marius Heidenstecker). - Speeded up cRemux::ScanVideoPacket() (thanks to Reinhard Nissl). - Enhanced logging EPG event data. - Fixed format string handling (thanks to Darren Salt). - The new function cDevice::ForceTransferMode() can be used to force the primary device into transfer mode (thanks to Reinhard Nissl). - The 'version' of EPG events is now ignored when reading EPG data from 'epg.data' or via SVDRP/PUTE to avoid problems with double EPG events. - The 'running status' of EPG events is now only set to SI::RunningStatusNotRunning for events before the present event. - Fixed some #include sequences. - Single shot VPS timers are now only considered 'expired' if their associated EPG event has been explicitly set to SI::RunningStatusNotRunning. - The check for timers to be deleted is now done only every 30 seconds. --- svdrp.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'svdrp.c') diff --git a/svdrp.c b/svdrp.c index 9fa61ea..0cf73e9 100644 --- a/svdrp.c +++ b/svdrp.c @@ -10,7 +10,7 @@ * and interact with the Video Disk Recorder - or write a full featured * graphical interface that sits on top of an SVDRP connection. * - * $Id: svdrp.c 1.93 2006/01/14 16:08:20 kls Exp $ + * $Id: svdrp.c 1.94 2006/03/26 09:14:13 kls Exp $ */ #include "svdrp.h" @@ -461,7 +461,7 @@ void cSVDRP::PrintHelpTopics(const char **hp) q += sprintf(q, "%*s", -MAXHELPTOPIC, topic); } x = 0; - Reply(-214, buffer); + Reply(-214, "%s", buffer); } } @@ -782,7 +782,7 @@ void cSVDRP::CmdGRAB(const char *Option) cBase64Encoder Base64(Image, ImageSize); const char *s; while ((s = Base64.NextLine()) != NULL) - Reply(-216, s); + Reply(-216, "%s", s); Reply(216, "Grabbed image %s", Option); } free(Image); @@ -799,7 +799,7 @@ void cSVDRP::CmdHELP(const char *Option) if (*Option) { const char *hp = GetHelpPage(Option, HelpPages); if (hp) - Reply(214, hp); + Reply(214, "%s", hp); else { Reply(504, "HELP topic \"%s\" unknown", Option); return; @@ -1332,7 +1332,7 @@ void cSVDRP::CmdPLUG(const char *Option) if (*cmd && *option) { const char *hp = GetHelpPage(option, plugin->SVDRPHelpPages()); if (hp) { - Reply(-214, hp); + Reply(-214, "%s", hp); Reply(214, "End of HELP info"); } else @@ -1358,7 +1358,7 @@ void cSVDRP::CmdPLUG(const char *Option) int ReplyCode = 900; cString s = plugin->SVDRPCommand(cmd, option, ReplyCode); if (s) - Reply(abs(ReplyCode), *s); + Reply(abs(ReplyCode), "%s", *s); else Reply(500, "Command unrecognized: \"%s\"", cmd); } @@ -1380,7 +1380,7 @@ void cSVDRP::CmdPUTE(const char *Option) { delete PUTEhandler; PUTEhandler = new cPUTEhandler; - Reply(PUTEhandler->Status(), PUTEhandler->Message()); + Reply(PUTEhandler->Status(), "%s", PUTEhandler->Message()); if (PUTEhandler->Status() != 354) DELETENULL(PUTEhandler); } @@ -1467,7 +1467,7 @@ void cSVDRP::Execute(char *Cmd) // handle PUTE data: if (PUTEhandler) { if (!PUTEhandler->Process(Cmd)) { - Reply(PUTEhandler->Status(), PUTEhandler->Message()); + Reply(PUTEhandler->Status(), "%s", PUTEhandler->Message()); DELETENULL(PUTEhandler); } return; -- cgit v1.2.3