mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Version 1.4.4-1
- Some improvements to the man pages (thanks to Ville Skyttä). - Fixed a possible segfault in cSkins::Message() (thanks to Udo Richter). - Made the getskyepg.pl script of the 'sky' plugin send a user agent message to the server, according to the rules at http://bleb.org/tv/data/listings. If your version of 'wget' doesn't support the -U option to set the user agent, use the new option -U of getskyepg.pl to have the information added to the URL as a query string. - The getskyepg.pl script now replaces "&" with "&". - Fixed a possible crash in remux.c on 64-bit machines (thanks to Reinhard Nissl). - Fixed a typo in the change to the "Use small font" setup option in version 1.3.47 in the HISTORY and CONTRIBUTORS file (reported by Andreas Brugger). - Added a missing 'const' to cRecordingInfo::ChannelID() (reported by Andreas Brugger). This required the APIVERSION to be increased, so plugins will have to be recompiled. - Now calling cPluginManager::Active() only if VDR is really trying to shut down, and waiting for 5 minutes before calling it again (thanks to Jörg Wendel for reporting that cPlugin::Active() was called too often, and to Udo Richter for some hints on how to improve this). - Replaced 'unsigned long' with 'uint32_t' and 'uint64' with 'uint64_t' to avoid problems on 64-bit machines.
This commit is contained in:
		
							
								
								
									
										12
									
								
								CONTRIBUTORS
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								CONTRIBUTORS
									
									
									
									
									
								
							@@ -1113,6 +1113,7 @@ Reinhard Nissl <rnissl@gmx.de>
 | 
			
		||||
 for implementing cDevice::ForceTransferMode()
 | 
			
		||||
 for changing the behaviour when hitting the end of a recording in fast forward mode
 | 
			
		||||
 for suggesting to give the cRemote::CallPlugin() function a boolean return value
 | 
			
		||||
 for fixing a possible crash in remux.c on 64-bit machines
 | 
			
		||||
 | 
			
		||||
Richard Robson <richard_robson@beeb.net>
 | 
			
		||||
 for reporting freezing replay if a timer starts while in Transfer Mode from the
 | 
			
		||||
@@ -1474,6 +1475,8 @@ Udo Richter <udo_richter@gmx.de>
 | 
			
		||||
 for reporting that an assignment in svdrp.c didn't use the cTimer::operator=())
 | 
			
		||||
 for suggesting that the function cThread::Cancel() should only set 'running' to
 | 
			
		||||
 false and not actually kill the thread if the special value -1 is given
 | 
			
		||||
 or fixing a possible segfault in cSkins::Message()
 | 
			
		||||
 for some hints on how to improve handling cPluginManager::Active()
 | 
			
		||||
 | 
			
		||||
Sven Kreiensen <svenk@kammer.uni-hannover.de>
 | 
			
		||||
 for his help in keeping 'channels.conf.terr' up to date
 | 
			
		||||
@@ -1521,6 +1524,9 @@ Andreas Brugger <brougs78@gmx.net>
 | 
			
		||||
 cStatus::Replaying(), so that they can provide the full file name of the recording
 | 
			
		||||
 for suggesting that externally provided EPG data (with table ID 0x00) shall get its
 | 
			
		||||
 component descriptors set from the broadcast data
 | 
			
		||||
 for reporting a typo in the change to the "Use small font" setup option in version
 | 
			
		||||
 1.3.47 in the HISTORY and CONTRIBUTORS file
 | 
			
		||||
 for reporting a missing 'const' in cRecordingInfo::ChannelID()
 | 
			
		||||
 | 
			
		||||
Dino Ravnic <dino.ravnic@fer.hr>
 | 
			
		||||
 for fixing some characters in the iso8859-2 font file
 | 
			
		||||
@@ -1638,6 +1644,7 @@ Ville Skytt
 | 
			
		||||
 for fixing converting the port number in the "connect from..." log message of SVDRP
 | 
			
		||||
 for reporting that there are places where ntohs() is assigned to different types
 | 
			
		||||
 for adapting cThread::ThreadId() to recent kernels
 | 
			
		||||
 for some improvements to the man pages
 | 
			
		||||
 | 
			
		||||
Steffen Beyer <cpunk@reactor.de>
 | 
			
		||||
 for fixing setting the colored button help after deleting a recording in case the next
 | 
			
		||||
@@ -1903,7 +1910,7 @@ Suur Karu <suurkaru@fastmail.fm>
 | 
			
		||||
Ronny Kornexl <ronny.kornexl@online.de>
 | 
			
		||||
 for reporting a problem with setting "No title" for broken event data
 | 
			
		||||
 for suggesting to make the "Use small font" setup option *always* use the small
 | 
			
		||||
 font if set to '3' - even if it would have been a fixed font
 | 
			
		||||
 font if set to '2' - even if it would have been a fixed font
 | 
			
		||||
 for reporting a bug in initializing 'noapiv' in the Makefile
 | 
			
		||||
 | 
			
		||||
Vladim<EFBFBD>r B<>rta <vladimir.barta@k2atmitec.cz>
 | 
			
		||||
@@ -2032,3 +2039,6 @@ Boguslaw Juza <bogdan@uci.agh.edu.pl>
 | 
			
		||||
Ulf Kiener <webmaster@ulf-kiener.de>
 | 
			
		||||
 for reporting a problem with audio track descriptions in the DVD plugin after a
 | 
			
		||||
 replay has been stopped
 | 
			
		||||
 | 
			
		||||
J<EFBFBD>rg Wendel <vdr-ml@jwendel.de>
 | 
			
		||||
 for reporting that cPlugin::Active() was called too often
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										25
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										25
									
								
								HISTORY
									
									
									
									
									
								
							@@ -4611,7 +4611,7 @@ Video Disk Recorder Revision History
 | 
			
		||||
  (since version 1.3.38 disk access is done in a separate thread, so the watchdog
 | 
			
		||||
  timer won't hit).
 | 
			
		||||
- Changed the behaviour of the "Use small font" setup option to *always* use the small
 | 
			
		||||
  font if set to '3' - even if it would have been a fixed font (suggested by Ronny
 | 
			
		||||
  font if set to '2' - even if it would have been a fixed font (suggested by Ronny
 | 
			
		||||
  Kornexl).
 | 
			
		||||
- No longer using characters 0x01 and 0x02 for mapping single quote and slash in
 | 
			
		||||
  recording names (thanks to Patrick Fischer for reporting that this was a problem
 | 
			
		||||
@@ -4985,3 +4985,26 @@ Video Disk Recorder Revision History
 | 
			
		||||
 | 
			
		||||
- Fixed displaying the replay mode symbol in case of "Multi speed mode" (reported
 | 
			
		||||
  by Marco Schl<68><6C>ler).
 | 
			
		||||
 | 
			
		||||
2006-12-03: Version 1.4.4-1
 | 
			
		||||
 | 
			
		||||
- Some improvements to the man pages (thanks to Ville Skytt<74>).
 | 
			
		||||
- Fixed a possible segfault in cSkins::Message() (thanks to Udo Richter).
 | 
			
		||||
- Made the getskyepg.pl script of the 'sky' plugin send a user agent message to
 | 
			
		||||
  the server, according to the rules at http://bleb.org/tv/data/listings.
 | 
			
		||||
  If your version of 'wget' doesn't support the -U option to set the user agent,
 | 
			
		||||
  use the new option -U of getskyepg.pl to have the information added to the URL
 | 
			
		||||
  as a query string.
 | 
			
		||||
- The getskyepg.pl script now replaces "&" with "&".
 | 
			
		||||
- Fixed a possible crash in remux.c on 64-bit machines (thanks to Reinhard Nissl).
 | 
			
		||||
- Fixed a typo in the change to the "Use small font" setup option in version 1.3.47
 | 
			
		||||
  in the HISTORY and CONTRIBUTORS file (reported by Andreas Brugger).
 | 
			
		||||
- Added a missing 'const' to cRecordingInfo::ChannelID() (reported by Andreas
 | 
			
		||||
  Brugger). This required the APIVERSION to be increased, so plugins will have to
 | 
			
		||||
  be recompiled.
 | 
			
		||||
- Now calling cPluginManager::Active() only if VDR is really trying to shut down,
 | 
			
		||||
  and waiting for 5 minutes before calling it again (thanks to J<>rg Wendel for
 | 
			
		||||
  reporting that cPlugin::Active() was called too often, and to Udo Richter for
 | 
			
		||||
  some hints on how to improve this).
 | 
			
		||||
- Replaced 'unsigned long long' with 'uint32_t' and 'uint64' with 'uint64_t' to
 | 
			
		||||
  avoid problems on 64-bit machines.
 | 
			
		||||
 
 | 
			
		||||
@@ -45,3 +45,12 @@ VDR Plugin 'sky' Revision History
 | 
			
		||||
2006-03-26: Version 0.3.5
 | 
			
		||||
 | 
			
		||||
- Fixed format string handling.
 | 
			
		||||
 | 
			
		||||
2006-12-02: Version 0.3.5 (version number not increased)
 | 
			
		||||
 | 
			
		||||
- Made the getskyepg.pl script send a user agent message to
 | 
			
		||||
  the server, according to the rules at http://bleb.org/tv/data/listings.
 | 
			
		||||
  If your version of 'wget' doesn't support the -U option to set the user agent,
 | 
			
		||||
  use the new option -U of getskyepg.pl to have the information added to the URL
 | 
			
		||||
  as a query string.
 | 
			
		||||
- The getskyepg.pl script now replaces "&" with "&".
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
#
 | 
			
		||||
# See the README file for copyright information and how to reach the author.
 | 
			
		||||
#
 | 
			
		||||
# $Id: getskyepg.pl 1.4 2006/01/08 10:21:32 kls Exp $
 | 
			
		||||
# $Id: getskyepg.pl 1.6 2006/12/02 09:52:49 kls Exp $
 | 
			
		||||
 | 
			
		||||
use Getopt::Std;
 | 
			
		||||
use Time::Local;
 | 
			
		||||
@@ -21,18 +21,29 @@ Options: -c filename        channel config file name (default: channels.conf.sky
 | 
			
		||||
         -p port            SVDRP port number (default: 2001)
 | 
			
		||||
         -S source          channel source (default: S28.2E)
 | 
			
		||||
         -D days            days to get EPG for (1..7, default: 2)
 | 
			
		||||
         -U                 use this if your version of 'wget' doesn't support -U
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
die $Usage if (!getopts("c:d:D:hp:S:") || $opt_h);
 | 
			
		||||
die $Usage if (!getopts("c:d:D:hp:S:U") || $opt_h);
 | 
			
		||||
 | 
			
		||||
$Conf   = $opt_c || "channels.conf.sky";
 | 
			
		||||
$Dest   = $opt_d || "localhost";
 | 
			
		||||
$Port   = $opt_p || 2001;
 | 
			
		||||
$Source = $opt_S || "S28.2E";
 | 
			
		||||
$Days   = $opt_D || 2;
 | 
			
		||||
$User   = $opt_U;
 | 
			
		||||
 | 
			
		||||
# See "Rules for using this data" on http://bleb.org/tv/data/listings.
 | 
			
		||||
# In case you modify this script in a way that changes its behavior
 | 
			
		||||
# towards the www.bleb.org website, please replace 'vdrbugs@cadsoft.de'
 | 
			
		||||
# with your own email address! That way Andrew Flegg <andrew@bleb.org>,
 | 
			
		||||
# who runs that web site, can contact you in case of problems.
 | 
			
		||||
$IDENT = "VDR::getskyepg.pl, http://www.cadsoft.de/vdr - vdrbugs\@cadsoft.de";
 | 
			
		||||
$GAP = 2;
 | 
			
		||||
 | 
			
		||||
$SkyWebPage = "www.bleb.org/tv/data/listings";
 | 
			
		||||
$WGET = "/usr/bin/wget -q -O-";
 | 
			
		||||
$WGET .= " -U '$IDENT'" unless $User;
 | 
			
		||||
$LOGGER = "/usr/bin/logger -t SKYEPG";
 | 
			
		||||
 | 
			
		||||
$DST = -3600; # Daylight Saving Time offset
 | 
			
		||||
@@ -76,13 +87,21 @@ sub GetPage
 | 
			
		||||
  my $channel = shift;
 | 
			
		||||
  my $day = shift;
 | 
			
		||||
  $day--;
 | 
			
		||||
  my $url = "$SkyWebPage/$day/$channel.xml";
 | 
			
		||||
  my $url = "http://$SkyWebPage/$day/$channel.xml";
 | 
			
		||||
  $url .= "?$IDENT" if $User;
 | 
			
		||||
  Log("reading $url");
 | 
			
		||||
  my @page = split("\n", `$WGET '$url'`);
 | 
			
		||||
  Log("received " . ($#page + 1) . " lines");
 | 
			
		||||
  return @page;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sub ReplaceTags
 | 
			
		||||
{
 | 
			
		||||
  my $s = shift;
 | 
			
		||||
  $s =~ s/&/&/g;
 | 
			
		||||
  return $s;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sub StripWhitespace
 | 
			
		||||
{
 | 
			
		||||
  my $s = shift;
 | 
			
		||||
@@ -96,7 +115,7 @@ sub Extract
 | 
			
		||||
  my $s = shift;
 | 
			
		||||
  my $t = shift;
 | 
			
		||||
  $s =~ /<$t>([^<]*)<\/$t>/;
 | 
			
		||||
  return StripWhitespace($1);
 | 
			
		||||
  return ReplaceTags(StripWhitespace($1));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# In order to get the duration we need to buffer the last event:
 | 
			
		||||
@@ -174,6 +193,7 @@ sub GetEpgData
 | 
			
		||||
             $data .= $line;
 | 
			
		||||
             }
 | 
			
		||||
          }
 | 
			
		||||
      sleep($GAP);
 | 
			
		||||
      }
 | 
			
		||||
  SVDRPsend("c");
 | 
			
		||||
  Log("generated $numEvents EPG events");
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										8
									
								
								config.h
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								config.h
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: config.h 1.277 2006/11/04 13:19:31 kls Exp $
 | 
			
		||||
 * $Id: config.h 1.279 2006/12/01 15:08:43 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef __CONFIG_H
 | 
			
		||||
@@ -21,13 +21,13 @@
 | 
			
		||||
 | 
			
		||||
// VDR's own version number:
 | 
			
		||||
 | 
			
		||||
#define VDRVERSION  "1.4.4"
 | 
			
		||||
#define VDRVERSION  "1.4.4-1"
 | 
			
		||||
#define VDRVERSNUM   10404  // Version * 10000 + Major * 100 + Minor
 | 
			
		||||
 | 
			
		||||
// The plugin API's version number:
 | 
			
		||||
 | 
			
		||||
#define APIVERSION  "1.4.4"
 | 
			
		||||
#define APIVERSNUM   10404  // Version * 10000 + Major * 100 + Minor
 | 
			
		||||
#define APIVERSION  "1.4.5"
 | 
			
		||||
#define APIVERSNUM   10405  // Version * 10000 + Major * 100 + Minor
 | 
			
		||||
 | 
			
		||||
// When loading plugins, VDR searches them by their APIVERSION, which
 | 
			
		||||
// may be smaller than VDRVERSION in case there have been no changes to
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										4
									
								
								font.h
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								font.h
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: font.h 1.12 2006/02/05 13:46:36 kls Exp $
 | 
			
		||||
 * $Id: font.h 1.13 2006/12/02 11:11:48 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef __FONT_H
 | 
			
		||||
@@ -32,7 +32,7 @@ enum eDvbCode {
 | 
			
		||||
class cFont {
 | 
			
		||||
public:
 | 
			
		||||
  enum { NUMCHARS = 256 };
 | 
			
		||||
  typedef unsigned long tPixelData;
 | 
			
		||||
  typedef uint32_t tPixelData;
 | 
			
		||||
  struct tCharData {
 | 
			
		||||
    tPixelData width, height;
 | 
			
		||||
    tPixelData lines[1];
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										4
									
								
								menu.c
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								menu.c
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: menu.c 1.445 2006/11/04 13:13:18 kls Exp $
 | 
			
		||||
 * $Id: menu.c 1.446 2006/12/02 11:12:02 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "menu.h"
 | 
			
		||||
@@ -3280,7 +3280,7 @@ eOSState cDisplayChannel::ProcessKey(eKeys Key)
 | 
			
		||||
            return osEnd;
 | 
			
		||||
            }
 | 
			
		||||
    };
 | 
			
		||||
  if (!timeout || lastTime.Elapsed() < (uint64)(Setup.ChannelInfoTime * 1000)) {
 | 
			
		||||
  if (!timeout || lastTime.Elapsed() < (uint64_t)(Setup.ChannelInfoTime * 1000)) {
 | 
			
		||||
     if (Key == kNone && !number && group < 0 && !NewChannel && channel && channel->Number() != cDevice::CurrentChannel()) {
 | 
			
		||||
        // makes sure a channel switch through the SVDRP CHAN command is displayed
 | 
			
		||||
        channel = Channels.GetByNumber(cDevice::CurrentChannel());
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										8
									
								
								rcu.c
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								rcu.c
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: rcu.c 1.14 2006/06/16 09:29:24 kls Exp $
 | 
			
		||||
 * $Id: rcu.c 1.15 2006/12/02 11:12:28 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "rcu.h"
 | 
			
		||||
@@ -97,7 +97,7 @@ void cRcuRemote::Action(void)
 | 
			
		||||
  time_t LastCodeRefresh = 0;
 | 
			
		||||
  cTimeMs FirstTime;
 | 
			
		||||
  unsigned char LastCode = 0, LastMode = 0;
 | 
			
		||||
  uint64 LastCommand = ~0; // 0x00 might be a valid command
 | 
			
		||||
  uint64_t LastCommand = ~0; // 0x00 might be a valid command
 | 
			
		||||
  unsigned int LastData = 0;
 | 
			
		||||
  bool repeat = false;
 | 
			
		||||
 | 
			
		||||
@@ -109,13 +109,13 @@ void cRcuRemote::Action(void)
 | 
			
		||||
                  buffer.raw[i] = b;
 | 
			
		||||
                  if (i == 5) {
 | 
			
		||||
                     unsigned short Address = ntohs(buffer.data.address); // the PIC sends bytes in "network order"
 | 
			
		||||
                     uint64         Command = ntohl(buffer.data.command);
 | 
			
		||||
                     uint64_t       Command = ntohl(buffer.data.command);
 | 
			
		||||
                     if (code == 'B' && Address == 0x0000 && Command == 0x00004000)
 | 
			
		||||
                        // Well, well, if it isn't the "d-box"...
 | 
			
		||||
                        // This remote control sends the above command before and after
 | 
			
		||||
                        // each keypress - let's just drop this:
 | 
			
		||||
                        break;
 | 
			
		||||
                     Command |= uint64(Address) << 32;
 | 
			
		||||
                     Command |= uint64_t(Address) << 32;
 | 
			
		||||
                     if (Command != LastCommand) {
 | 
			
		||||
                        LastCommand = Command;
 | 
			
		||||
                        repeat = false;
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: recording.h 1.55 2006/07/30 10:24:07 kls Exp $
 | 
			
		||||
 * $Id: recording.h 1.56 2006/12/01 15:06:07 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef __RECORDING_H
 | 
			
		||||
@@ -50,7 +50,7 @@ private:
 | 
			
		||||
  void SetAux(const char *Aux);
 | 
			
		||||
public:
 | 
			
		||||
  ~cRecordingInfo();
 | 
			
		||||
  tChannelID ChannelID(void) { return channelID; }
 | 
			
		||||
  tChannelID ChannelID(void) const { return channelID; }
 | 
			
		||||
  const char *Title(void) const { return event->Title(); }
 | 
			
		||||
  const char *ShortText(void) const { return event->ShortText(); }
 | 
			
		||||
  const char *Description(void) const { return event->Description(); }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										16
									
								
								remote.c
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								remote.c
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: remote.c 1.54 2006/10/14 11:05:57 kls Exp $
 | 
			
		||||
 * $Id: remote.c 1.55 2006/12/02 11:12:42 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "remote.h"
 | 
			
		||||
@@ -116,7 +116,7 @@ bool cRemote::PutMacro(eKeys Key)
 | 
			
		||||
  return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool cRemote::Put(uint64 Code, bool Repeat, bool Release)
 | 
			
		||||
bool cRemote::Put(uint64_t Code, bool Repeat, bool Release)
 | 
			
		||||
{
 | 
			
		||||
  char buffer[32];
 | 
			
		||||
  snprintf(buffer, sizeof(buffer), "%016LX", Code);
 | 
			
		||||
@@ -203,7 +203,7 @@ cRemotes Remotes;
 | 
			
		||||
 | 
			
		||||
struct tKbdMap {
 | 
			
		||||
  eKbdFunc func;
 | 
			
		||||
  uint64 code;
 | 
			
		||||
  uint64_t code;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
static tKbdMap KbdMap[] = {
 | 
			
		||||
@@ -264,7 +264,7 @@ void cKbdRemote::SetRawMode(bool RawMode)
 | 
			
		||||
  rawMode = RawMode;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
uint64 cKbdRemote::MapFuncToCode(int Func)
 | 
			
		||||
uint64_t cKbdRemote::MapFuncToCode(int Func)
 | 
			
		||||
{
 | 
			
		||||
  for (tKbdMap *p = KbdMap; p->func != kfNone; p++) {
 | 
			
		||||
      if (p->func == Func)
 | 
			
		||||
@@ -273,7 +273,7 @@ uint64 cKbdRemote::MapFuncToCode(int Func)
 | 
			
		||||
  return (Func <= 0xFF) ? Func : 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int cKbdRemote::MapCodeToFunc(uint64 Code)
 | 
			
		||||
int cKbdRemote::MapCodeToFunc(uint64_t Code)
 | 
			
		||||
{
 | 
			
		||||
  for (tKbdMap *p = KbdMap; p->func != kfNone; p++) {
 | 
			
		||||
      if (p->code == Code)
 | 
			
		||||
@@ -296,9 +296,9 @@ int cKbdRemote::ReadKey(void)
 | 
			
		||||
  return -1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
uint64 cKbdRemote::ReadKeySequence(void)
 | 
			
		||||
uint64_t cKbdRemote::ReadKeySequence(void)
 | 
			
		||||
{
 | 
			
		||||
  uint64 k = 0;
 | 
			
		||||
  uint64_t k = 0;
 | 
			
		||||
  int key1;
 | 
			
		||||
 | 
			
		||||
  if ((key1 = ReadKey()) >= 0) {
 | 
			
		||||
@@ -342,7 +342,7 @@ uint64 cKbdRemote::ReadKeySequence(void)
 | 
			
		||||
void cKbdRemote::Action(void)
 | 
			
		||||
{
 | 
			
		||||
  while (Running()) {
 | 
			
		||||
        uint64 Command = ReadKeySequence();
 | 
			
		||||
        uint64_t Command = ReadKeySequence();
 | 
			
		||||
        if (Command) {
 | 
			
		||||
           if (rawMode || !Put(Command)) {
 | 
			
		||||
              int func = MapCodeToFunc(Command);
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										10
									
								
								remote.h
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								remote.h
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: remote.h 1.37 2006/10/14 11:46:58 kls Exp $
 | 
			
		||||
 * $Id: remote.h 1.38 2006/12/02 11:12:49 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef __REMOTE_H
 | 
			
		||||
@@ -35,7 +35,7 @@ protected:
 | 
			
		||||
  cRemote(const char *Name);
 | 
			
		||||
  const char *GetSetup(void);
 | 
			
		||||
  void PutSetup(const char *Setup);
 | 
			
		||||
  bool Put(uint64 Code, bool Repeat = false, bool Release = false);
 | 
			
		||||
  bool Put(uint64_t Code, bool Repeat = false, bool Release = false);
 | 
			
		||||
  bool Put(const char *Code, bool Repeat = false, bool Release = false);
 | 
			
		||||
public:
 | 
			
		||||
  virtual ~cRemote();
 | 
			
		||||
@@ -100,13 +100,13 @@ private:
 | 
			
		||||
  struct termios savedTm;
 | 
			
		||||
  virtual void Action(void);
 | 
			
		||||
  int ReadKey(void);
 | 
			
		||||
  uint64 ReadKeySequence(void);
 | 
			
		||||
  int MapCodeToFunc(uint64 Code);
 | 
			
		||||
  uint64_t ReadKeySequence(void);
 | 
			
		||||
  int MapCodeToFunc(uint64_t Code);
 | 
			
		||||
public:
 | 
			
		||||
  cKbdRemote(void);
 | 
			
		||||
  virtual ~cKbdRemote();
 | 
			
		||||
  static bool KbdAvailable(void) { return kbdAvailable; }
 | 
			
		||||
  static uint64 MapFuncToCode(int Func);
 | 
			
		||||
  static uint64_t MapFuncToCode(int Func);
 | 
			
		||||
  static void SetRawMode(bool RawMode);
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								remux.c
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								remux.c
									
									
									
									
									
								
							@@ -11,7 +11,7 @@
 | 
			
		||||
 * The cRepacker family's code was originally written by Reinhard Nissl <rnissl@gmx.de>,
 | 
			
		||||
 * and adapted to the VDR coding style by Klaus.Schmidinger@cadsoft.de.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: remux.c 1.56 2006/04/17 12:48:12 kls Exp $
 | 
			
		||||
 * $Id: remux.c 1.57 2006/12/01 14:46:25 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "remux.h"
 | 
			
		||||
@@ -389,7 +389,7 @@ bool cVideoRepacker::ScanDataForStartCodeFast(const uchar *&Data, const uchar *L
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
  Data = Limit;
 | 
			
		||||
  unsigned long *Scanner = (unsigned long *)(Data - 3);
 | 
			
		||||
  uint32_t *Scanner = (uint32_t *)(Data - 3);
 | 
			
		||||
  scanner = ntohl(*Scanner);
 | 
			
		||||
  return false;
 | 
			
		||||
}
 | 
			
		||||
@@ -615,7 +615,7 @@ bool cVideoRepacker::ScanForEndOfPictureFast(const uchar *&Data, const uchar *Li
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
  Data = Limit + 1;
 | 
			
		||||
  unsigned long *LocalScanner = (unsigned long *)(Data - 4);
 | 
			
		||||
  uint32_t *LocalScanner = (uint32_t *)(Data - 4);
 | 
			
		||||
  localScanner = ntohl(*LocalScanner);
 | 
			
		||||
  return false;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										7
									
								
								skins.c
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								skins.c
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: skins.c 1.11 2006/06/03 14:39:14 kls Exp $
 | 
			
		||||
 * $Id: skins.c 1.12 2006/12/01 13:32:37 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "skins.h"
 | 
			
		||||
@@ -226,8 +226,11 @@ eKeys cSkins::Message(eMessageType Type, const char *s, int Seconds)
 | 
			
		||||
    }
 | 
			
		||||
  if (!Current())
 | 
			
		||||
     return kNone;
 | 
			
		||||
  if (!cSkinDisplay::Current() && !displayMessage)
 | 
			
		||||
  if (!cSkinDisplay::Current()) {
 | 
			
		||||
     if (displayMessage)
 | 
			
		||||
        delete displayMessage;
 | 
			
		||||
     displayMessage = Current()->DisplayMessage();
 | 
			
		||||
     }
 | 
			
		||||
  cSkinDisplay::Current()->SetMessage(Type, s);
 | 
			
		||||
  cSkinDisplay::Current()->Flush();
 | 
			
		||||
  cStatus::MsgOsdStatusMessage(s);
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										8
									
								
								tools.c
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								tools.c
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: tools.c 1.120 2006/08/12 13:30:07 kls Exp $
 | 
			
		||||
 * $Id: tools.c 1.121 2006/12/02 11:12:59 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "tools.h"
 | 
			
		||||
@@ -547,11 +547,11 @@ cTimeMs::cTimeMs(void)
 | 
			
		||||
  Set();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
uint64 cTimeMs::Now(void)
 | 
			
		||||
uint64_t cTimeMs::Now(void)
 | 
			
		||||
{
 | 
			
		||||
  struct timeval t;
 | 
			
		||||
  if (gettimeofday(&t, NULL) == 0)
 | 
			
		||||
     return (uint64(t.tv_sec)) * 1000 + t.tv_usec / 1000;
 | 
			
		||||
     return (uint64_t(t.tv_sec)) * 1000 + t.tv_usec / 1000;
 | 
			
		||||
  return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -565,7 +565,7 @@ bool cTimeMs::TimedOut(void)
 | 
			
		||||
  return Now() >= begin;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
uint64 cTimeMs::Elapsed(void)
 | 
			
		||||
uint64_t cTimeMs::Elapsed(void)
 | 
			
		||||
{
 | 
			
		||||
  return Now() - begin;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										10
									
								
								tools.h
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								tools.h
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: tools.h 1.93 2006/04/16 10:40:45 kls Exp $
 | 
			
		||||
 * $Id: tools.h 1.94 2006/12/02 11:14:14 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef __TOOLS_H
 | 
			
		||||
@@ -15,6 +15,7 @@
 | 
			
		||||
#include <fcntl.h>
 | 
			
		||||
#include <poll.h>
 | 
			
		||||
#include <stddef.h>
 | 
			
		||||
#include <stdint.h>
 | 
			
		||||
#include <stdio.h>
 | 
			
		||||
#include <string.h>
 | 
			
		||||
#include <syslog.h>
 | 
			
		||||
@@ -22,7 +23,6 @@
 | 
			
		||||
#include <sys/types.h>
 | 
			
		||||
 | 
			
		||||
typedef unsigned char uchar;
 | 
			
		||||
typedef unsigned long long int uint64;
 | 
			
		||||
 | 
			
		||||
extern int SysLogLevel;
 | 
			
		||||
 | 
			
		||||
@@ -159,13 +159,13 @@ public:
 | 
			
		||||
 | 
			
		||||
class cTimeMs {
 | 
			
		||||
private:
 | 
			
		||||
  uint64 begin;
 | 
			
		||||
  uint64_t begin;
 | 
			
		||||
public:
 | 
			
		||||
  cTimeMs(void);
 | 
			
		||||
  static uint64 Now(void);
 | 
			
		||||
  static uint64_t Now(void);
 | 
			
		||||
  void Set(int Ms = 0);
 | 
			
		||||
  bool TimedOut(void);
 | 
			
		||||
  uint64 Elapsed(void);
 | 
			
		||||
  uint64_t Elapsed(void);
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
class cReadLine {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										14
									
								
								vdr.1
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								vdr.1
									
									
									
									
									
								
							@@ -8,7 +8,7 @@
 | 
			
		||||
.\" License as specified in the file COPYING that comes with the
 | 
			
		||||
.\" vdr distribution.
 | 
			
		||||
.\"
 | 
			
		||||
.\" $Id: vdr.1 1.26 2006/06/24 10:07:16 kls Exp $
 | 
			
		||||
.\" $Id: vdr.1 1.27 2006/11/19 10:02:31 kls Exp $
 | 
			
		||||
.\"
 | 
			
		||||
.TH vdr 1 "30 Apr 2006" "1.4.0" "Video Disk Recorder"
 | 
			
		||||
.SH NAME
 | 
			
		||||
@@ -23,12 +23,12 @@ It can work with signals received from satellites (DVB-S) as
 | 
			
		||||
well as cable (DVB-C) and terrestrial (DVB-T) signals.
 | 
			
		||||
 | 
			
		||||
At least one DVB card is required to run \fBvdr\fR. With it you can watch
 | 
			
		||||
live tv while recording one or more other broadcasts from the same transponder.
 | 
			
		||||
live TV while recording one or more other broadcasts from the same transponder.
 | 
			
		||||
It is also possible to start watching a recorded programme before the live
 | 
			
		||||
broadcast has ended (\fBtime shifting\fR). In order to record from different
 | 
			
		||||
transponders simultaneously two or more DVB cards are necessary.
 | 
			
		||||
By default \fBvdr\fR can support up to four
 | 
			
		||||
DVB cards. The primary DVB card (the one your tv set is connected to) has
 | 
			
		||||
DVB cards. The primary DVB card (the one your TV set is connected to) has
 | 
			
		||||
to be a "full featured" card, which means it must contain an MPEG decoder
 | 
			
		||||
and provide audio and video signal outputs.
 | 
			
		||||
 | 
			
		||||
@@ -76,7 +76,7 @@ Set logging to \fIlevel\fR.
 | 
			
		||||
\fB0\fR\ =\ no logging, \fB1\fR\ =\ errors only,
 | 
			
		||||
\fB2\fR\ =\ errors and info, \fB3\fR\ =\ errors, info and debug.
 | 
			
		||||
The default logging level is \fB3\fR.
 | 
			
		||||
If logging should be done to LOG_LOCALn instead of
 | 
			
		||||
If logging should be done to LOG_LOCAL\fIn\fR instead of
 | 
			
		||||
LOG_USER, add '.n' to LEVEL, as in 3.7 (n=0..7).
 | 
			
		||||
.TP
 | 
			
		||||
.BI \-L\  dir ,\ \-\-lib= dir
 | 
			
		||||
@@ -122,10 +122,12 @@ Use a serial port remote control device.
 | 
			
		||||
If \fIpath\fR is omitted, vdr uses \fI/dev/ttyS1\fR.
 | 
			
		||||
.TP
 | 
			
		||||
.BI \-r\  cmd ,\ \-\-record= cmd
 | 
			
		||||
Call \fIcmd\fR before and after a recording.
 | 
			
		||||
Call \fIcmd\fR before and after a recording. See the file \fIINSTALL\fR for
 | 
			
		||||
more information.
 | 
			
		||||
.TP
 | 
			
		||||
.BI \-s\  cmd ,\ \-\-shutdown= cmd
 | 
			
		||||
Call \fIcmd\fR to shutdown the computer.
 | 
			
		||||
Call \fIcmd\fR to shutdown the computer. See the file \fIINSTALL\fR for more
 | 
			
		||||
information.
 | 
			
		||||
.TP
 | 
			
		||||
.BI \-t\  tty ,\ \-\-terminal= tty
 | 
			
		||||
Set the controlling terminal.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										8
									
								
								vdr.5
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								vdr.5
									
									
									
									
									
								
							@@ -8,7 +8,7 @@
 | 
			
		||||
.\" License as specified in the file COPYING that comes with the
 | 
			
		||||
.\" vdr distribution.
 | 
			
		||||
.\"
 | 
			
		||||
.\" $Id: vdr.5 1.59 2006/04/30 08:55:16 kls Exp $
 | 
			
		||||
.\" $Id: vdr.5 1.60 2006/11/19 10:02:33 kls Exp $
 | 
			
		||||
.\"
 | 
			
		||||
.TH vdr 5 "30 Apr 2006" "1.4.0" "Video Disk Recorder Files"
 | 
			
		||||
.SH NAME
 | 
			
		||||
@@ -57,7 +57,7 @@ to right):
 | 
			
		||||
.B Name
 | 
			
		||||
The channel's name (if the name originally contains a ':' character
 | 
			
		||||
it has to be replaced by '|').
 | 
			
		||||
Some tv stations provide a way of deriving a "short name" from the
 | 
			
		||||
Some TV stations provide a way of deriving a "short name" from the
 | 
			
		||||
channel name, which can be used in situations where there is not
 | 
			
		||||
much space for displaying a long name. If a short name is available
 | 
			
		||||
for this channel, it follows the full name and is delimited by a comma,
 | 
			
		||||
@@ -248,7 +248,7 @@ cause the timer to record on that day. Example:
 | 
			
		||||
 | 
			
		||||
.B MTWTF\-\-
 | 
			
		||||
 | 
			
		||||
will define a timer that records on Monday thru Friday and does not record
 | 
			
		||||
will define a timer that records on Monday through Friday and does not record
 | 
			
		||||
on weekends. The same result could be achieved with \fBABCDE\-\-\fR (this is
 | 
			
		||||
used to allow setting the days with language specific characters).
 | 
			
		||||
Note that only letters may be used here, no digits.
 | 
			
		||||
@@ -259,7 +259,7 @@ so a complete definition could look like this:
 | 
			
		||||
 | 
			
		||||
\fBMTWTF\-\-@2002\-02\-18\fR
 | 
			
		||||
 | 
			
		||||
which would implement a timer that records Monday thru Friday, and will hit
 | 
			
		||||
which would implement a timer that records Monday through Friday, and will hit
 | 
			
		||||
for the first time on or after February 18, 2002.
 | 
			
		||||
This \fBfirst day\fR feature can be used to disable a repeating timer for a couple
 | 
			
		||||
of days, or for instance to define a new Mon...Fri timer on Wednesday, which
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										8
									
								
								vdr.c
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								vdr.c
									
									
									
									
									
								
							@@ -22,7 +22,7 @@
 | 
			
		||||
 *
 | 
			
		||||
 * The project's page is at http://www.cadsoft.de/vdr
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: vdr.c 1.280 2006/10/14 10:01:32 kls Exp $
 | 
			
		||||
 * $Id: vdr.c 1.282 2006/12/02 16:22:12 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include <getopt.h>
 | 
			
		||||
@@ -1154,7 +1154,7 @@ int main(int argc, char *argv[])
 | 
			
		||||
                 Skins.Message(mtInfo, tr("Editing process finished"));
 | 
			
		||||
              }
 | 
			
		||||
           }
 | 
			
		||||
        if (!Interact && ((!cRecordControls::Active() && !cCutter::Active() && !cPluginManager::Active() && (!Interface->HasSVDRPConnection() || UserShutdown)) || ForceShutdown)) {
 | 
			
		||||
        if (!Interact && ((!cRecordControls::Active() && !cCutter::Active() && (!Interface->HasSVDRPConnection() || UserShutdown)) || ForceShutdown)) {
 | 
			
		||||
           time_t Now = time(NULL);
 | 
			
		||||
           if (Now - LastActivity > ACTIVITYTIMEOUT) {
 | 
			
		||||
              // Shutdown:
 | 
			
		||||
@@ -1178,6 +1178,10 @@ int main(int argc, char *argv[])
 | 
			
		||||
                    timer = NULL;
 | 
			
		||||
                    dsyslog("reboot at %s", *TimeToString(Next));
 | 
			
		||||
                    }
 | 
			
		||||
                 if (!ForceShutdown && cPluginManager::Active()) {
 | 
			
		||||
                    LastActivity = Now - Setup.MinUserInactivity * 60 + SHUTDOWNRETRY; // try again later
 | 
			
		||||
                    continue;
 | 
			
		||||
                    }
 | 
			
		||||
                 if (!Next || Delta > Setup.MinEventTimeout * 60 || ForceShutdown) {
 | 
			
		||||
                    ForceShutdown = false;
 | 
			
		||||
                    if (timer)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user