diff -ruN vdr-1.3.48/CONTRIBUTORS vdr-1.3.49/CONTRIBUTORS
--- vdr-1.3.48/CONTRIBUTORS	2006-04-23 13:43:54.000000000 +0200
+++ vdr-1.3.49/CONTRIBUTORS	2006-04-28 15:02:04.000000000 +0200
@@ -334,6 +334,8 @@
  for completing storing the current audio volume in the setup.conf file
  for fixing the EPG display in case Setup.ShowInfoOnChSwitch is set to "no"
  for reporting a bug in handling min/max borders when entering integer values
+ for reporting a problem with replaying in fast forward mode if the video directory
+ is mounted via a Samba share
 
 Thomas Heiligenmann <thomas@heiligenmann.de>
  for implementing the SVDRP commands LSTR and DELR
@@ -439,6 +441,7 @@
  for reporting a problem with inconsistent channel and timer lists
  for making the "Play" key in live viewing mode resume a previous replay session
  for suggesting to allow defining key macros for all non-modeless keys
+ for reporting a bug in entering '0' in a cMenuEditIntItem
 
 Michael Rakowski <mrak@gmx.de>
  for translating OSD texts to the Polish language
@@ -614,6 +617,8 @@
  display in the ST:TNG skin's channel display
  for suggesting to make CharArray::DataOwnData::assign() in 'libsi' more robust
  against invalid data
+ for reporting a problem in extracting APIVERSION with older versions of 'sed'
+ for fixing broken APIVERSION extraction line in 'newplugin'
 
 Reinhard Walter Buchner <rw.buchner@freenet.de>
  for adding some satellites to 'sources.conf'
@@ -976,6 +981,8 @@
  for reporting a bug in handling the color button texts when switching from the
  'Schedule' menu of a channel without EPG info to the 'What's on now' menu
  for reporting a bug in handling empty titles in cEvent::FixEpgBugs()
+ for suggesting to replace the "Really restart?" prompt in the call to
+ cPluginManager::Active() in menu.c to "restart anyway?"
 
 Ralf Klueber <ralf.klueber@vodafone.com>
  for reporting a bug in cutting a recording if there is only a single editing mark
@@ -1412,6 +1419,7 @@
  --help or --version option
  for suggesting to add a warning about plugins that don't honor APIVERSION in their
  Makefile
+ for providing a shorter version of the 'sed' expression for extracting APIVERSION
 
 Sven Kreiensen <svenk@kammer.uni-hannover.de>
  for his help in keeping 'channels.conf.terr' up to date
@@ -1802,6 +1810,8 @@
  doesn't have any EPG data
  for giving the DrawBitmap() function a new parameter 'Overlay' that allows a bitmap
  to be drawn with a transparent background
+ for reporting that the "'1' for encrypted radio channels" part in the description
+ of the VPID in vdr.5 is obsolete
 
 Daniel Karsubka <dkar@gmx.de>
  for suggesting to write the epg.data file when VDR exits
@@ -1814,6 +1824,7 @@
  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
+ for reporting a bug in initializing 'noapiv' in the Makefile
 
 Bárta Vladimír <vladimir.barta@k2atmitec.cz>
  for translating OSD texts to the Czech language
@@ -1864,3 +1875,14 @@
 Werner Schweer <ws@seh.de>
  for pointing out that the 'z' printf modifier should be used for 'size_t' type
  arguments
+
+Nino Gerbino <ngerb@interfree.it>
+ for translating OSD texts to the Italian language
+
+Markus Ehrnsperger <markus.ehrnsperger@googlemail.com>
+ for reporting a problem with missing 'INCLUDES += -I$(DVBDIR)/include' in an existing
+ Make.config
+
+Werner Färber <w.faerber@gmx.de>
+ for reporting a bug in handling the cPluginManager::Active() result when pressing
+ the "Power" key
diff -ruN vdr-1.3.48/HISTORY vdr-1.3.49/HISTORY
--- vdr-1.3.48/HISTORY	2006-04-23 13:43:20.000000000 +0200
+++ vdr-1.3.49/HISTORY	2006-04-28 15:29:22.000000000 +0200
@@ -4532,8 +4532,15 @@
   files as VDR itself, the definition of DVBDIR has been removed from the VDR
   Makefile. If you are using a driver version that has its header files at a location
   other than /usr/include/linux/dvb, you can define DVBDIR in the Make.config
-  file (see also INSTALL). Any reference to DVBDIR should be removed from all
-  plugins' Makefiles, like this:
+  file (see also INSTALL). Note that if you already have a Make.config file of your
+  own, you should add the lines
+
+  ifdef DVBDIR
+  INCLUDES += -I$(DVBDIR)/include
+  endif
+
+  to its end, as in the new Make.config.template.
+  Any reference to DVBDIR should be removed from all plugins' Makefiles, like this:
 
   ------------------------------------------------------------
   --- PLUGINS/src/hello/Makefile  2005/11/11 13:20:14     1.10
@@ -4580,7 +4587,7 @@
   +### The version number of VDR's plugin API (taken from VDR's "config.h"):
 
   -VDRVERSION = $(shell grep 'define VDRVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g')
-  +APIVERSION = $(shell grep 'define APIVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g')
+  +APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
 
    ### The name of the distribution archive:
 
@@ -4648,3 +4655,25 @@
   that the 'z' modifier should be used here).
 - Ignoring k_Repeat when deciding whether the same key has been pressed in string
   input fields (based on a patch from Marko Mäkelä).
+
+2006-04-28: Version 1.3.49
+
+- Fixed initializing 'noapiv' in the Makefile (reported by Ronny Kornexl).
+- Fixed extracting APIVERSION to work with older versions of 'sed' (reported by
+  Oliver Endriss; thanks also to Udo Richter for a shorter version of the 'sed'
+  expression).
+- Fixed broken APIVERSION extraction line in 'newplugin' (thanks to Oliver Endriss).
+- Fixed entering '0' in a cMenuEditIntItem (reported by Mirko Dölle).
+- Updated the Italian OSD texts (thanks to Nino Gerbino).
+- Added a note about adding 'INCLUDES += -I$(DVBDIR)/include' to an existing
+  Make.config (problem reported by Markus Ehrnsperger).
+- Fixed handling the cPluginManager::Active() result when pressing the "Power" key
+  (reported by Werner Färber).
+- Added a hint about commenting out the line '#define USE_FADVISE' in tools.c in
+  case of problems with replaying in fast forward mode if the video directory is
+  mounted via a Samba share (reported by Andy Grobb).
+- Changed the "Really restart?" prompt in the call to cPluginManager::Active() in
+  menu.c to "restart anyway?" (suggested by Rolf Ahrenberg).
+- Removed the obsolete "'1' for encrypted radio channels" part from the description
+  of the VPID in vdr.5 (reported by Alexander Hans).
+- Fixed tuning to the channel of a VPS timer if the device is the actual device.
diff -ruN vdr-1.3.48/INSTALL vdr-1.3.49/INSTALL
--- vdr-1.3.48/INSTALL	2006-04-21 16:57:48.000000000 +0200
+++ vdr-1.3.49/INSTALL	2006-04-28 15:07:14.000000000 +0200
@@ -1,7 +1,7 @@
 Installation of the Video Disk Recorder
 ---------------------------------------
 
-Version 1.3
+Version 1.4
 -----------
 
 IMPORTANT NOTES:
@@ -324,6 +324,13 @@
 directories and there is a large number of files and/or subdirectories in
 there.
 
+If your video directory is mounted via a Samba share, and you are experiencing
+problems with replaying in fast forward mode, you can comment out the line
+
+#define USE_FADVISE
+
+in the file tools.c, which may lead to better results.
+
 Configuration files:
 --------------------
 
diff -ruN vdr-1.3.48/MANUAL vdr-1.3.49/MANUAL
--- vdr-1.3.48/MANUAL	2006-04-21 16:57:48.000000000 +0200
+++ vdr-1.3.49/MANUAL	2006-04-28 15:07:08.000000000 +0200
@@ -1,7 +1,7 @@
 Video Disk Recorder User's Manual
 ---------------------------------
 
-Version 1.3
+Version 1.4
 -----------
 
 * Remote Control Keys
diff -ruN vdr-1.3.48/Makefile vdr-1.3.49/Makefile
--- vdr-1.3.48/Makefile	2006-04-23 11:01:17.000000000 +0200
+++ vdr-1.3.49/Makefile	2006-04-24 19:18:06.000000000 +0200
@@ -4,7 +4,7 @@
 # See the main source file 'vdr.c' for copyright information and
 # how to reach the author.
 #
-# $Id: Makefile 1.89 2006/04/23 09:01:17 kls Exp $
+# $Id: Makefile 1.91 2006/04/24 17:18:06 kls Exp $
 
 .DELETE_ON_ERROR:
 
@@ -81,8 +81,8 @@
 
 # The version numbers of VDR and the plugin API (taken from VDR's "config.h"):
 
-VDRVERSION = $(shell sed -ne '/define VDRVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' config.h)
-APIVERSION = $(shell sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' config.h)
+VDRVERSION = $(shell sed -ne '/define VDRVERSION/s/^.*"\(.*\)".*$$/\1/p' config.h)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' config.h)
 
 ifdef VFAT
 # for people who want their video directory on a VFAT partition
@@ -176,7 +176,7 @@
 
 plugins: include-dir
 	@failed="";\
-	@noapiv="";\
+	noapiv="";\
 	for i in `ls $(PLUGINDIR)/src | grep -v '[^a-z0-9]'`; do\
 	    echo "Plugin $$i:";\
 	    if ! grep -q "\$$(LIBDIR)/.*\$$(APIVERSION)" "$(PLUGINDIR)/src/$$i/Makefile" ; then\
diff -ruN vdr-1.3.48/PLUGINS/src/hello/Makefile vdr-1.3.49/PLUGINS/src/hello/Makefile
--- vdr-1.3.48/PLUGINS/src/hello/Makefile	2006-04-22 11:59:44.000000000 +0200
+++ vdr-1.3.49/PLUGINS/src/hello/Makefile	2006-04-24 19:20:58.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # Makefile for a Video Disk Recorder plugin
 #
-# $Id: Makefile 1.13 2006/04/22 09:59:44 kls Exp $
+# $Id: Makefile 1.14 2006/04/24 17:20:58 kls Exp $
 
 # The official name of this plugin.
 # This name will be used in the '-P...' option of VDR to load the plugin.
@@ -30,7 +30,7 @@
 
 ### The version number of VDR's plugin API (taken from VDR's "config.h"):
 
-APIVERSION = $(shell sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' $(VDRDIR)/config.h)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
 
 ### The name of the distribution archive:
 
diff -ruN vdr-1.3.48/PLUGINS/src/osddemo/Makefile vdr-1.3.49/PLUGINS/src/osddemo/Makefile
--- vdr-1.3.48/PLUGINS/src/osddemo/Makefile	2006-04-22 11:59:49.000000000 +0200
+++ vdr-1.3.49/PLUGINS/src/osddemo/Makefile	2006-04-24 19:21:00.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # Makefile for a Video Disk Recorder plugin
 #
-# $Id: Makefile 1.7 2006/04/22 09:59:49 kls Exp $
+# $Id: Makefile 1.8 2006/04/24 17:21:00 kls Exp $
 
 # The official name of this plugin.
 # This name will be used in the '-P...' option of VDR to load the plugin.
@@ -30,7 +30,7 @@
 
 ### The version number of VDR's plugin API (taken from VDR's "config.h"):
 
-APIVERSION = $(shell sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' $(VDRDIR)/config.h)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
 
 ### The name of the distribution archive:
 
diff -ruN vdr-1.3.48/PLUGINS/src/servicedemo/Makefile vdr-1.3.49/PLUGINS/src/servicedemo/Makefile
--- vdr-1.3.48/PLUGINS/src/servicedemo/Makefile	2006-04-22 11:59:55.000000000 +0200
+++ vdr-1.3.49/PLUGINS/src/servicedemo/Makefile	2006-04-24 19:21:01.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # Makefile for a Video Disk Recorder plugin
 #
-# $Id: Makefile 1.5 2006/04/22 09:59:55 kls Exp $
+# $Id: Makefile 1.6 2006/04/24 17:21:01 kls Exp $
 
 # The official name of this plugin.
 # This name will be used in the '-P...' option of VDR to load the plugin.
@@ -31,7 +31,7 @@
 
 ### The version number of VDR's plugin API (taken from VDR's "config.h"):
 
-APIVERSION = $(shell sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' $(VDRDIR)/config.h)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
 
 ### The name of the distribution archive:
 
diff -ruN vdr-1.3.48/PLUGINS/src/skincurses/Makefile vdr-1.3.49/PLUGINS/src/skincurses/Makefile
--- vdr-1.3.48/PLUGINS/src/skincurses/Makefile	2006-04-22 12:00:03.000000000 +0200
+++ vdr-1.3.49/PLUGINS/src/skincurses/Makefile	2006-04-24 19:21:02.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # Makefile for a Video Disk Recorder plugin
 #
-# $Id: Makefile 1.5 2006/04/22 10:00:03 kls Exp $
+# $Id: Makefile 1.6 2006/04/24 17:21:02 kls Exp $
 
 # The official name of this plugin.
 # This name will be used in the '-P...' option of VDR to load the plugin.
@@ -30,7 +30,7 @@
 
 ### The version number of VDR's plugin API (taken from VDR's "config.h"):
 
-APIVERSION = $(shell sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' $(VDRDIR)/config.h)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
 
 ### The name of the distribution archive:
 
diff -ruN vdr-1.3.48/PLUGINS/src/sky/Makefile vdr-1.3.49/PLUGINS/src/sky/Makefile
--- vdr-1.3.48/PLUGINS/src/sky/Makefile	2006-04-22 12:00:17.000000000 +0200
+++ vdr-1.3.49/PLUGINS/src/sky/Makefile	2006-04-24 19:21:03.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # Makefile for a Video Disk Recorder plugin
 #
-# $Id: Makefile 1.7 2006/04/22 10:00:17 kls Exp $
+# $Id: Makefile 1.8 2006/04/24 17:21:03 kls Exp $
 
 # The official name of this plugin.
 # This name will be used in the '-P...' option of VDR to load the plugin.
@@ -30,7 +30,7 @@
 
 ### The version number of VDR's plugin API (taken from VDR's "config.h"):
 
-APIVERSION = $(shell sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' $(VDRDIR)/config.h)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
 
 ### The name of the distribution archive:
 
diff -ruN vdr-1.3.48/PLUGINS/src/status/Makefile vdr-1.3.49/PLUGINS/src/status/Makefile
--- vdr-1.3.48/PLUGINS/src/status/Makefile	2006-04-22 12:00:24.000000000 +0200
+++ vdr-1.3.49/PLUGINS/src/status/Makefile	2006-04-24 19:21:04.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # Makefile for a Video Disk Recorder plugin
 #
-# $Id: Makefile 1.11 2006/04/22 10:00:24 kls Exp $
+# $Id: Makefile 1.12 2006/04/24 17:21:04 kls Exp $
 
 # The official name of this plugin.
 # This name will be used in the '-P...' option of VDR to load the plugin.
@@ -30,7 +30,7 @@
 
 ### The version number of VDR's plugin API (taken from VDR's "config.h"):
 
-APIVERSION = $(shell sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' $(VDRDIR)/config.h)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
 
 ### The name of the distribution archive:
 
diff -ruN vdr-1.3.48/PLUGINS/src/svdrpdemo/Makefile vdr-1.3.49/PLUGINS/src/svdrpdemo/Makefile
--- vdr-1.3.48/PLUGINS/src/svdrpdemo/Makefile	2006-04-22 12:00:32.000000000 +0200
+++ vdr-1.3.49/PLUGINS/src/svdrpdemo/Makefile	2006-04-24 19:21:06.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # Makefile for a Video Disk Recorder plugin
 #
-# $Id: Makefile 1.5 2006/04/22 10:00:32 kls Exp $
+# $Id: Makefile 1.6 2006/04/24 17:21:06 kls Exp $
 
 # The official name of this plugin.
 # This name will be used in the '-P...' option of VDR to load the plugin.
@@ -30,7 +30,7 @@
 
 ### The version number of VDR's plugin API (taken from VDR's "config.h"):
 
-APIVERSION = $(shell sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' $(VDRDIR)/config.h)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
 
 ### The name of the distribution archive:
 
diff -ruN vdr-1.3.48/PLUGINS.html vdr-1.3.49/PLUGINS.html
--- vdr-1.3.48/PLUGINS.html	2006-04-21 16:57:48.000000000 +0200
+++ vdr-1.3.49/PLUGINS.html	2006-04-28 15:05:28.000000000 +0200
@@ -6,7 +6,7 @@
 
 <center><h1>The VDR Plugin System</h1></center>
 
-<center><b>Version 1.3</b></center>
+<center><b>Version 1.4</b></center>
 <p>
 <center>
 Copyright &copy; 2006 Klaus Schmidinger<br>
@@ -14,19 +14,6 @@
 <a href="http://www.cadsoft.de/vdr">www.cadsoft.de/vdr</a>
 </center>
 <p>
-<!--X1.3.31--><table width=100%><tr><td bgcolor=#0000AA>&nbsp;</td><td width=100%>
-Important modifications introduced in version 1.3.31 are marked like this.
-<!--X1.3.31--></td></tr></table>
-<!--X1.3.37--><table width=100%><tr><td bgcolor=#00AA00>&nbsp;</td><td width=100%>
-Important modifications introduced in version 1.3.37 are marked like this.
-<!--X1.3.37--></td></tr></table>
-<!--X1.3.38--><table width=100%><tr><td bgcolor=#AA0000>&nbsp;</td><td width=100%>
-Important modifications introduced in version 1.3.38 are marked like this.
-<!--X1.3.38--></td></tr></table>
-<!--X1.3.47--><table width=100%><tr><td bgcolor=#FF0000>&nbsp;</td><td width=100%>
-Important modifications introduced in version 1.3.46 are marked like this.
-<!--X1.3.47--></td></tr></table>
-<p>
 VDR provides an easy to use plugin interface that allows additional functionality
 to be added to the program by implementing a dynamically loadable library file.
 This interface allows programmers to develop additional functionality for VDR completely
@@ -62,18 +49,14 @@
 <li><a href="#Main menu entry">Main menu entry</a>
 <li><a href="#User interaction">User interaction</a>
 <li><a href="#Housekeeping">Housekeeping</a>
-<!--X1.3.47--><table width=100%><tr><td bgcolor=#FF0000>&nbsp;</td><td width=100%>
 <li><a href="#Main thread hook">Main thread hook</a>
 <li><a href="#Activity">Activity</a>
-<!--X1.3.47--></td></tr></table>
 <li><a href="#Setup parameters">Setup parameters</a>
 <li><a href="#The Setup menu">The Setup menu</a>
 <li><a href="#Configuration files">Configuration files</a>
 <li><a href="#Internationalization">Internationalization</a>
 <li><a href="#Custom services">Custom services</a>
-<!--X1.3.31--><table width=100%><tr><td bgcolor=#0000AA>&nbsp;</td><td width=100%>
 <li><a href="#SVDRP commands">SVDRP commands</a>
-<!--X1.3.31--></td></tr></table>
 <li><a href="#Loading plugins into VDR">Loading plugins into VDR</a>
 <li><a href="#Building the distribution package">Building the distribution package</a>
 </ul>
@@ -166,7 +149,6 @@
 The <tt>lib</tt> directory contains the dynamically loadable libraries of all
 available plugins. Note that the names of these files are created by concatenating
 <p>
-<!--X1.3.47--><table width=100%><tr><td bgcolor=#FF0000>&nbsp;</td><td width=100%>
 <table border=2>
 <tr><td align=center><b><tt>libvdr-</tt></b></td><td align=center><b><tt>hello</tt></b></td><td align=center><b><tt>.so.</tt></b></td><td align=center><b><tt>1.1.0</tt></b></td></tr>
 <tr><td align=center><font size=-1>VDR plugin<br>library prefix</font></td><td align=center><font size=-1>name of<br>the plugin</font></td><td align=center><font size=-1>shared object<br>indicator</font></td><td align=center><font size=-1>API version number<br>this plugin was<br>compiled for</font></td></tr>
@@ -178,7 +160,6 @@
 the current VDR version. That way minor fixes to VDR, that don't require changes
 to the VDR header files, can be made without requiring all plugins to be
 recompiled.
-<!--X1.3.47--></td></tr></table>
 <p>
 The plugin library files can be stored in any directory. If the default organization
 is not used, the path to the plugin directory has be be given to VDR through the
@@ -620,7 +601,6 @@
 the plugin should launch a separate thread to do this.
 </b>
 
-<!--X1.3.47--><table width=100%><tr><td bgcolor=#FF0000>&nbsp;</td><td width=100%>
 <a name="Main thread hook"><hr><h2>Main thread hook</h2>
 
 <center><i><b>Pushing in...</b></i></center><p>
@@ -677,7 +657,6 @@
 be queried, and further prompts may show up. If all prompts have been confirmed,
 the shutdown will take place. As soon as one prompt is not confirmed, no
 further plugins will be queried and no shutdown will be done.
-<!--X1.3.47--></td></tr></table>
 
 <a name="Setup parameters"><hr><h2>Setup parameters</h2>
 
@@ -1002,7 +981,6 @@
 <tt>cPluginManager::CallAllServices()</tt>. This function returns <tt>true</tt> if
 any plugin handled the request, or <tt>false</tt> if no plugin handled the request.
 
-<!--X1.3.31--><table width=100%><tr><td bgcolor=#0000AA>&nbsp;</td><td width=100%>
 <a name="SVDRP commands"><hr><h2>SVDRP commands</h2>
 
 <center><i><b>Infinite Diversity in Infinite Combinations</b></i></center><p>
@@ -1094,8 +1072,6 @@
 when presenting them to the caller, and the continuation character ('<tt>-</tt>')
 will be set for all but the last one.
 
-<!--X1.3.31--></td></tr></table>
-
 <a name="Loading plugins into VDR"><hr><h2>Loading plugins into VDR</h2>
 
 <center><i><b>Saddling up!</b></i></center><p>
@@ -1329,9 +1305,7 @@
   cMyControl(void);
   virtual ~cMyControl();
   virtual void Hide(void);
-<!--X1.3.38--><table width=100%><tr><td bgcolor=#AA0000>&nbsp;</td><td width=100%>
   virtual cOsdObject *GetInfo(void);
-<!--X1.3.38--></td></tr></table>
   virtual eOSState ProcessKey(eKeys Key);
   };
 </pre></td></tr></table><p>
@@ -1361,13 +1335,11 @@
 it has to hide itself from the OSD, in case it uses it. <tt>Hide()</tt> may be called at
 any time, and it may be called even if the <tt>cControl</tt> is not visible at the moment.
 <p>
-<!--X1.3.38--><table width=100%><tr><td bgcolor=#AA0000>&nbsp;</td><td width=100%>
 The <tt>GetInfo()</tt> function is called when the user presses the <tt>Info</tt> button,
 and shall return a pointer to a <tt>cOsdObject</tt> that contains information
 about the currently played programme. The caller takes ownership of the returned
 pointer and will delete it when it is no longer used. If no information is available,
 <tt>NULL</tt> shall be returned.
-<!--X1.3.38--></td></tr></table>
 <p>
 Finally, to get things going, a plugin that implements a player (and the surrounding
 infrastructure like displaying a list of playable stuff etc) simply has to call the
@@ -1589,7 +1561,6 @@
 areas. Drawing areas are always rectangular and may not overlap (but do not need
 to be adjacent).
 
-<!--X1.3.37--><table width=100%><tr><td bgcolor=#00AA00>&nbsp;</td><td width=100%>
 <p>
 Directly accessing the OSD is only allowed from the foreground thread, which
 restricts this to a <tt>cOsdObject</tt> returned from the plugin's <tt>MainMenuAction()</tt>
@@ -1603,7 +1574,6 @@
 </pre></td></tr></table><p>
 
 to queue that message for display. See <tt>VDR/skins.h</tt> for details.
-<!--X1.3.37--></td></tr></table>
 
 <a name="Skins"><hr><h2>Skins</h2>
 
diff -ruN vdr-1.3.48/config.h vdr-1.3.49/config.h
--- vdr-1.3.48/config.h	2006-04-21 16:53:26.000000000 +0200
+++ vdr-1.3.49/config.h	2006-04-28 14:33:13.000000000 +0200
@@ -4,7 +4,7 @@
  * See the main source file 'vdr.c' for copyright information and
  * how to reach the author.
  *
- * $Id: config.h 1.252 2006/04/21 14:53:26 kls Exp $
+ * $Id: config.h 1.254 2006/04/28 12:33:13 kls Exp $
  */
 
 #ifndef __CONFIG_H
@@ -21,8 +21,8 @@
 
 // VDR's own version number:
 
-#define VDRVERSION  "1.3.48"
-#define VDRVERSNUM   10348  // Version * 10000 + Major * 100 + Minor
+#define VDRVERSION  "1.3.49"
+#define VDRVERSNUM   10349  // Version * 10000 + Major * 100 + Minor
 
 // The plugin API's version number:
 
diff -ruN vdr-1.3.48/i18n.c vdr-1.3.49/i18n.c
--- vdr-1.3.48/i18n.c	2006-04-23 10:39:00.000000000 +0200
+++ vdr-1.3.49/i18n.c	2006-04-28 14:50:04.000000000 +0200
@@ -4,12 +4,12 @@
  * See the main source file 'vdr.c' for copyright information and
  * how to reach the author.
  *
- * $Id: i18n.c 1.273 2006/04/23 08:39:00 kls Exp $
+ * $Id: i18n.c 1.275 2006/04/28 12:50:04 kls Exp $
  *
  * Translations provided by:
  *
  * Slovenian   Miha Setina <mihasetina@softhome.net>, Matjaz Thaler <matjaz.thaler@guest.arnes.si>
- * Italian     Alberto Carraro <bertocar@tin.it>, Antonio Ospite <ospite@studenti.unina.it>, Sean Carlos <seanc@libero.it>
+ * Italian     Alberto Carraro <bertocar@tin.it>, Antonio Ospite <ospite@studenti.unina.it>, Sean Carlos <seanc@libero.it>, Nino Gerbino <ngerb@interfree.it>
  * Dutch       Arnold Niessen <niessen@iae.nl> <arnold.niessen@philips.com>, Hans Dingemans <hans.dingemans@tacticalops.nl>, Maarten Wisse <Maarten.Wisse@urz.uni-hd.de>
  * Portuguese  Paulo Lopes <pmml@netvita.pt>
  * French      Jean-Claude Repetto <jc@repetto.org>, Olivier Jacques <jacquesolivier@hotmail.com>, Gregoire Favre <greg@magma.unil.ch>, Nicolas Huillard <nhuillard@e-dition.fr>, Pierre Briec <pbriec@free.fr>
@@ -264,7 +264,7 @@
   { "Recording info",
     "Aufzeichnung",
     "Podatki o snemanju",
-    "",// TODO
+    "Info Registrazione",
     "Opname info",
     "",// TODO
     "Infos sur l'enregistrement",
@@ -418,7 +418,7 @@
   { "Info",
     "Info",
     "Info",
-    "",//TODO
+    "Info",
     "Info",
     "",//TODO
     "Info",
@@ -462,7 +462,7 @@
   { "This event - %s",
     "Diese Sendung - %s",
     "Ta oddaja - %s",
-    "",//TODO
+    "Quest'evento - %s",
     "",//TODO
     "",//TODO
     "Cet événement",
@@ -484,7 +484,7 @@
   { "This event - all channels",
     "Diese Sendung - alle Kanäle",
     "Ta oddaja - vsi kanali",
-    "",//TODO
+    "Quest'evento - tutti i canali",
     "",//TODO
     "",//TODO
     "Cet événement - toutes les chaînes",
@@ -506,7 +506,7 @@
   { "All events - all channels",
     "Alle Sendungen - alle Kanäle",
     "Vse oddaje - vsi kanali",
-    "",//TODO
+    "Tutti gli eventi - tutti i canali",
     "",//TODO
     "",//TODO
     "Tous les événements - toutes chaînes",
@@ -683,7 +683,7 @@
   { "Button$Timer",
     "Timer",
     "Termini",
-    "",// TODO
+    "Timer",
     "",// TODO
     "",// TODO
     "Programmation",
@@ -727,7 +727,7 @@
   { "Button$Info",
     "Info",
     "Info",
-    "",//TODO
+    "Info",
     "Info",
     "",//TODO
     "Info",
@@ -793,7 +793,7 @@
   { "Button$Rewind",
     "Anfang",
     "Na zaèetek",
-    "Da inizio",
+    "Dall'inizio",
     "Naar begin",
     "Rebobinar",
     "Retour",
@@ -1035,7 +1035,7 @@
   { "Button$Menu",
     "Menü",
     "Meni",
-    "Menù",
+    "Menu",
     "Menu",
     "Menu",
     "Menu",
@@ -1101,7 +1101,7 @@
   { "Button$Audio",
     "Audio",
     "Zvok",
-    "",// TODO
+    "Audio",
     "Audio",
     "",// TODO
     "Audio",
@@ -1256,7 +1256,7 @@
   { "Really restart?",
     "Wirklich neu starten?",
     "Zares ponoven zagon?",
-    "Eseguo un restart?",
+    "Eseguo un riavvio?",
     "Werkelijk opnieuw starten?",
     "Tem a certeza que quer reiniciar?",
     "Redémarrer?",
@@ -1275,6 +1275,28 @@
     "Vil du virkelig genstarte?",
     "Opravdu restartovat?",
   },
+  { "restart anyway?",
+    "trotzdem neu starten?",
+    "zares ponoven zagon?",
+    "riavvio comunque?",
+    "toch opnieuw starten?",
+    "quer mesmo reiniciar?",
+    "redémarrer?",
+    "starte på nytt likevel?",
+    "käynnistetäänkö uudelleen?",
+    "zrestartowaæ mimo to?",
+    "¿reiniciar igualmente?",
+    "ÔåëéêÜ íá ãßíåé åðáíåêêßíçóç?",
+    "vill du ändå starta om?",
+    "repornesc, totuºi?",
+    "mégis újraindítani?",
+    "Reiniciar de totes maneres?",
+    "ÔÕÙáâÒØâÕÛìÝÞ ßÕàÕ×ÐßãáâØâì?",
+    "svejedno restart sistema?",
+    "restart?",
+    "genstart alligevel?",
+    "pøesto restartovat?",
+  },
   { "shut down anyway?",
     "trotzdem ausschalten?",
     "zares izklopi?",
@@ -1300,7 +1322,7 @@
   { "Recording - restart anyway?",
     "Aufnahme läuft - trotzdem neu starten?",
     "Snemanje - zares ponoven zagon?",
-    "In registrazione - restart comunque?",
+    "In registrazione - riavvio comunque?",
     "Opname loopt - toch opnieuw starten?",
     "Em gravação - quer mesmo reiniciar?",
     "Enregistrement en cours - redémarrer?",
@@ -1366,7 +1388,7 @@
   { "Press any key to cancel shutdown",
     "Taste drücken, um Ausschalten abzubrechen",
     "Pritisnite katerikoli gumb za preklic izklopa",
-    "Un tasto per annullare lo spegnimento",
+    "Premere un tasto per annullare lo spegnimento",
     "Druk een toets om shutdown af te breken",
     "Pressione qualquer tecla para cancelar",
     "Appuyez sur une touche pour annuler l'arrêt",
@@ -1477,7 +1499,7 @@
   { "Srate",
     "Srate",
     "Srate",
-    "Srate",
+    "SymbolRate",
     "Srate",
     "Srate",
     "Fréq. Symbole",
@@ -1499,7 +1521,7 @@
   { "Vpid",
     "Vpid",
     "Vpid",
-    "Vpid",
+    "PID Video",
     "Vpid",
     "PID de Vídeo",
     "PID Vidéo",
@@ -1521,7 +1543,7 @@
   { "Ppid",
     "Ppid",
     "Ppid",
-    "Ppid",
+    "PID Pcr",
     "Ppid",
     "Ppid",
     "Ppid",
@@ -1543,7 +1565,7 @@
   { "Apid1",
     "Apid1",
     "Apid1",
-    "Apid1",
+    "PID Audio (1)",
     "Apid1",
     "PID Áudio (1)",
     "PID Audio (1)",
@@ -1565,7 +1587,7 @@
   { "Apid2",
     "Apid2",
     "Apid2",
-    "Apid2",
+    "PID Audio (2)",
     "Apid2",
     "Apid2",
     "PID Audio (2)",
@@ -1587,7 +1609,7 @@
   { "Dpid1",
     "Dpid1",
     "Dpid1",
-    "Dpid1",
+    "PID AC3 (1)",
     "Dpid1",
     "PID AC3 (1)",
     "PID AC3 (1)",
@@ -1609,7 +1631,7 @@
   { "Dpid2",
     "Dpid2",
     "Dpid2",
-    "Dpid2",
+    "PID AC3 (2)",
     "Dpid2",
     "PID AC3 (2)",
     "PID AC3 (2)",
@@ -1631,7 +1653,7 @@
   { "Tpid",
     "Tpid",
     "Tpid",
-    "Tpid",
+    "PID Teletext",
     "Tpid",
     "PID Teletexto",
     "PID Télétexte",
@@ -1675,7 +1697,7 @@
   { "Free To Air",
     "frei empfangbar",
     "nekodiran",
-    "",//TODO
+    "in chiaro",
     "",//TODO
     "",//TODO
     "Aucun cryptage",
@@ -1697,7 +1719,7 @@
   { "encrypted",
     "verschlüsselt",
     "kodiran",
-    "",//TODO
+    "criptato",
     "",//TODO
     "",//TODO
     "Crypté",
@@ -1763,7 +1785,7 @@
   { "Bandwidth",
     "Bandbreite",
     "Pasovna ¹irina",
-    "Bandwidth",
+    "Banda passante",
     "Bandwidth",
     "Bandwidth",
     "Bande passante",
@@ -2183,7 +2205,7 @@
   { "Timer is recording!",
     "Timer zeichnet gerade auf!",
     "Snemanje po terminu!",
-    "Registrazione di un timer in corso!",
+    "Registrazione da un timer in corso!",
     "Timer is aan het opnemen!",
     "Timer a gravar!",
     "Enregistrement en cours!",
@@ -2249,7 +2271,7 @@
   { "*** Invalid Channel ***",
     "*** Ungültiger Kanal ***",
     "*** Neznan kanal ***",
-    "*** CANALE INVALIDO ***",
+    "*** CANALE NON VALIDO ***",
     "*** Ongeldig kanaal ***",
     "*** Canal Inválido! ***",
     "*** Chaîne invalide! ***",
@@ -2271,7 +2293,7 @@
   { "Upcoming VPS recording!",
     "VPS-Aufnahme beginnt in Kürze!",
     "Sledi VPS snemanje!",
-    "",//TODO
+    "Registrazione VPS in esecuzione!",
     "",//TODO
     "",//TODO
     "Enregistrement VPS commence prochaînement",
@@ -2337,7 +2359,7 @@
   { "Channel settings are not unique!",
     "Kanaleinstellungen sind nicht eindeutig!",
     "Nastavitve kanala niso edinstvene!",
-    "Paramentri Canale non unici!",
+    "Parametri canale non univoci!",
     "Kanaalinstellingen zijn niet uniek!",
     "",//TODO
     "Caractéristiques des chaînes ne sont pas uniques",
@@ -2491,7 +2513,7 @@
   { "Not enough disk space to start recording!",
     "Nicht genügend Plattenplatz für Aufnahme!",
     "Premalo prostora na disku za snemanje!",
-    "",//TODO
+    "Spazio su disco insufficiente per registrare!",
     "",//TODO
     "",//TODO
     "Espace disque insuffisant pour démarrer l'enregistrement!",
@@ -2535,7 +2557,7 @@
   { "Opening CAM menu...",
     "CAM-Menü wird geöffnet...",
     "Odpiram CAM meni...",
-    "",//TODO
+    "Apertura menu CAM...",
     "CAM-menu wordt geopend...",
     "",//TODO
     "Ouverture du menu CAM",
@@ -2579,7 +2601,7 @@
   { "Resetting CAM...",
     "CAM wird zurückgesetzt...",
     "Resetiram CAM...",
-    "",//TODO
+    "CAM reimpostato...",
     "CAM wordt herstart...",
     "",//TODO
     "Réinitialisation du CAM",
@@ -2645,7 +2667,7 @@
   { "Please enter %d digits!",
     "Bitte geben Sie %d Ziffern ein!",
     "Prosim vnesite %d ¹tevilk!",
-    "",//TODO
+    "Inserisci %d digits!",
     "Vul %d cijfers in!",
     "",//TODO
     "Veuillez entrer %d chiffres!",
@@ -2667,7 +2689,7 @@
   { "No audio available!",
     "Kein Audio verfügbar!",
     "Zvok ni dosegljiv!",
-    "",//TODO
+    "Nessun audio disponibile!",
     "Geen audio beschikbaar!",
     "",//TODO
     "",//TODO
@@ -2822,7 +2844,7 @@
   { "Replay",
     "Wiedergabe",
     "Predvajanje",
-    "Replay",
+    "Riproduzione",
     "Afspelen",
     "Replay",
     "Lecture",
@@ -2955,7 +2977,7 @@
   { "Setup.OSD$Skin",
     "Oberfläche",
     "Preobleka",
-    "Superficie Skin",
+    "Skin",
     "Skin",
     "",// TODO
     "Skin",
@@ -3021,7 +3043,7 @@
   { "Setup.OSD$Top",
     "Oben",
     "Zgoraj",
-    "Cima",
+    "Alto",
     "Boven",
     "",// TODO
     "Haut",
@@ -3153,7 +3175,7 @@
   { "skin dependent",
     "je nach Oberfläche",
     "odvisno od preobleke",
-    "in base alla superficie",
+    "in base allo skin",
     "skin afhankelijk",
     "",// TODO
     "dépend du skin",
@@ -3219,7 +3241,7 @@
   { "Setup.OSD$Channel info time (s)",
     "Anzeigedauer für Kanalinfo (s)",
     "Èas prikaza podatka o kanalu (s)",
-    "",// TODO
+    "Info orario canale (s)",
     "Duur tonen kanaal-informatie (s)",
     "",// TODO
     "Durée affichage infos chaînes (s)",
@@ -3263,7 +3285,7 @@
   { "Setup.OSD$Timeout requested channel info",
     "Angeforderte Kanalinfo schließen",
     "Èas prikaza informacije o kanalu",
-    "", // TODO
+    "Richiesta timeout info canale",
     "", // TODO
     "", // TODO
     "Demande d'infos de chaîne terminée",
@@ -3307,7 +3329,7 @@
   { "Setup.OSD$Scroll wraps",
     "Rundum scrollen",
     "Iz konca skoèi na zaèetek",
-    "",// TODO
+    "Scrolling testo menu OSD",
     "Rondom scrollen",
     "",// TODO
     "Défilement rotatif",
@@ -3329,7 +3351,7 @@
   { "Setup.OSD$Menu button closes",
     "Menu-Taste schließt",
     "Meni gumb zapre meni",
-    "",// TODO
+    "Bottone menu bloccato",
     "",// TODO
     "",// TODO
     "Menu bouton fermé",
@@ -3373,7 +3395,7 @@
   { "Setup.EPG$EPG scan timeout (h)",
     "Zeit bis zur EPG-Aktualisierung (h)",
     "Èas do EPG pregleda (h)",
-    "Timeout scansione aggiornamento EPG (ore)",
+    "Timeout scansione EPG (ore)",
     "EPG-scan Timeout (h)",
     "Expirou o EPG (h)",
     "Inactivité avant rech. EPG (h)",
@@ -3549,7 +3571,7 @@
   { "Setup.DVB$Video display format",
     "Video-Anzeigeformat",
     "Format video prikaza",
-    "",//TODO
+    "Formato display video",
     "Video display formaat",
     "",//TODO
     "Format d'affichage",
@@ -3659,7 +3681,7 @@
   { "Setup.DVB$Use Dolby Digital",
     "Dolby-Digital-Ton benutzen",
     "Uporabljaj Dolby Digital",
-    "",//TODO
+    "Usa Dolby Digital",
     "Dolby Digital gebruiken",
     "",//TODO
     "Utiliser le Dolby Digital",
@@ -3725,7 +3747,7 @@
   { "PIDs only",
     "nur PIDs",
     "samo PIDe",
-    "",// TODO
+    "solo PIDs",
     "",// TODO
     "",// TODO
     "PIDs uniquement",
@@ -3813,7 +3835,7 @@
   { "Setup.DVB$Audio languages",  // note the plural
     "Audio-Sprachen",
     "Jeziki za zvok",
-    "",//TODO
+    "Lingue Audio",
     "Audio talen",
     "",//TODO
     "Langues audio",
@@ -3835,7 +3857,7 @@
   { "Setup.DVB$Audio language",  // note the singular
     "Audio-Sprache",
     "Jezik za zvok",
-    "",//TODO
+    "Lingua Audio",
     "Audio taal",
     "",//TODO
     "Langue audio",
@@ -4319,7 +4341,7 @@
   { "Setup.Replay$Show replay mode",
     "Wiedergabestatus anzeigen",
     "Prika¾i re¾im predvajanja",
-    "Modalita' di visualizz su replay",
+    "Modalita' di visualizz. su replay",
     "Weergave mode aangeven",
     "Mostrar modo de replay",
     "Affichage mode de lecture",
@@ -4363,7 +4385,7 @@
   { "Setup.Miscellaneous$Min. event timeout (min)",
     "Brückenzeit zwischen Timern (min)",
     "Najmanj¹i èas dogodka (min)",
-    "Spegnimento: controllo prossimo evento (m)",
+    "Periodo minimo di pausa (min)",
     "Minimale event time-out (min)",
     "Período mínimo de pausa (min)",
     "MinEventTimeout (min)",
@@ -4385,7 +4407,7 @@
   { "Setup.Miscellaneous$Min. user inactivity (min)",
     "VDR ausschalten bei Inaktivität (min)",
     "Najmanj¹i èas neaktivnosti (min)",
-    "Spegnimento: tempo minimo di inattività (m)",
+    "Periodo minimo d'inattivita' (min)",
     "Minimum gebruikers inactiviteit (min)",
     "Período mínimo de inactividade (min)",
     "Durée minimale d'inact. (min)",
@@ -4451,7 +4473,7 @@
   { "Setup.Miscellaneous$Initial channel",
     "Kanal beim Einschalten",
     "Privzeti kanal",
-    "",// TODO
+    "Canale iniziale",
     "",// TODO
     "",// TODO
     "Chaîne initiale",
@@ -4473,7 +4495,7 @@
   { "Setup.Miscellaneous$Initial volume",
     "Lautstärke beim Einschalten",
     "Privzeta glasnost",
-    "",// TODO
+    "Volume iniziale",
     "",// TODO
     "",// TODO
     "Volume initial",
@@ -4495,7 +4517,7 @@
   { "Setup.Miscellaneous$as before",
     "wie vorher",
     "kot prej",
-    "",// TODO
+    "come prima",
     "",// TODO
     "",// TODO
     "comme avant",
@@ -4563,7 +4585,7 @@
   { " abcdefghijklmnopqrstuvwxyz0123456789-.#~,/_@",
     " aäbcdefghijklmnoöpqrstuüvwxyz0123456789-.#~,/_@",
     " abcèdefghijklmnopqrs¹tuvwxyz¾0123456789-.#~,/_@",
-    " aàbcdeéèfghiîjklmnopqrstuùvwxyz0123456789-.#~,/_@",
+    " aàbcdeéèfghiîjklmnoòpqrstuùvwxyz0123456789-.#~,/_@",
     " abcdefghijklmnopqrstuvwxyz0123456789-.#~,/_@áäàïóöòúüù",
     "",// TODO
     " aàbcçdeéèêfghiîjklmnoôpqrstuùûvwxyz0123456789-.#~,/_@",
@@ -4940,7 +4962,7 @@
   { "Key$Down",
     "Ab",
     "Dol",
-    "Giù",
+    "Giu",
     "Omlaag",
     "Baixo",
     "Bas",
@@ -4962,7 +4984,7 @@
   { "Key$Menu",
     "Menü",
     "Meni",
-    "Menù",
+    "Menu",
     "Menu",
     "Menu",
     "Menu",
@@ -5314,7 +5336,7 @@
   { "Key$Next",
     "Vorwärts",
     "Naprej",
-    "",// TODO
+    "Prossimo",
     "",// TODO
     "",// TODO
     "Suivant",
@@ -5336,7 +5358,7 @@
   { "Key$Prev",
     "Zurück",
     "Nazaj",
-    "",// TODO
+    "Precedente",
     "",// TODO
     "",// TODO
     "Précédent",
@@ -5424,7 +5446,7 @@
   { "Key$PrevChannel",
     "Vorheriger Kanal",
     "Prej¹nji kanal",
-    "",// TODO
+    "Canale Prec.",
     "",// TODO
     "",// TODO
     "Chaîne précédente",
@@ -5490,7 +5512,7 @@
   { "Key$Mute",
     "Stumm",
     "Izklop zvoka",
-    "Mute",
+    "Muto",
     "Geluid onderbreken",
     "Sem som",
     "Coupure du son",
@@ -5512,7 +5534,7 @@
   { "Key$Audio",
     "Audio",
     "Zvok",
-    "",// TODO
+    "Audio",
     "Audio",
     "",// TODO
     "Audio",
@@ -5645,7 +5667,7 @@
   { "top",
     "oben",
     "zgoraj",
-    "limite sup",
+    "limite sup.",
     "boven",
     "topo",
     "haut",
@@ -5667,7 +5689,7 @@
   { "bottom",
     "unten",
     "spodaj",
-    "limite inf",
+    "limite inf.",
     "onder",
     "fundo",
     "bas",
@@ -5865,7 +5887,7 @@
   { "Up/Dn for new location - OK to move",
     "Auf/Ab für neue Position - dann OK",
     "Gor/Dol za novo poz. - Ok za premik",
-    "Su/Giù per nuova posizione - OK per muovere",
+    "Su/Giu per nuova posizione - OK per muovere",
     "Gebruik Omhoog/Omlaag - daarna Ok",
     "Cima/Baixo para nova localização - Ok para mover",
     "Haut/Bas -> nouvelle place - OK -> déplacer",
@@ -5953,7 +5975,7 @@
   { "Recording started",
     "Aufzeichnung gestartet",
     "Snemanje se je prièelo",
-    "",//TODO
+    "Registrazione iniziata",
     "",//TODO
     "",//TODO
     "Enregistrement a commencé",
@@ -5997,7 +6019,7 @@
   { "Starting EPG scan",
     "Aktualisiere EPG-Daten",
     "Prièenjam EPG-scan",
-    "",// TODO
+    "Scan EPG iniziato",
     "Bezig met starten EPG scan",
     "",// TODO
     "Mise à jour du guide des programmes",
@@ -6063,7 +6085,7 @@
   { "ST:TNG Panels",
     "ST:TNG-Konsolen",
     "ST:TNG Konsola",
-    "Consolles ST:TNG",
+    "Pannelli ST:TNG",
     "ST:TNG Consoles",
     "",// TODO
     "Consoles ST:TNG",
@@ -6085,7 +6107,7 @@
   { "No title",
     "Kein Titel",
     "Brez naziva",
-    "",// TODO
+    "Nessun titolo",
     "Geen titel",
     "",// TODO
     "Sans titre",
diff -ruN vdr-1.3.48/menu.c vdr-1.3.49/menu.c
--- vdr-1.3.48/menu.c	2006-04-16 14:20:46.000000000 +0200
+++ vdr-1.3.49/menu.c	2006-04-28 14:48:01.000000000 +0200
@@ -4,7 +4,7 @@
  * See the main source file 'vdr.c' for copyright information and
  * how to reach the author.
  *
- * $Id: menu.c 1.434 2006/04/16 12:20:46 kls Exp $
+ * $Id: menu.c 1.435 2006/04/28 12:48:01 kls Exp $
  */
 
 #include "menu.h"
@@ -2704,7 +2704,7 @@
 {
   if (Interface->Confirm(tr("Really restart?"))
      && (!cRecordControls::Active() || Interface->Confirm(tr("Recording - restart anyway?")))
-     && !cPluginManager::Active(tr("Really restart?"))) {
+     && !cPluginManager::Active(tr("restart anyway?"))) {
      cThread::EmergencyExit(true);
      return osEnd;
      }
diff -ruN vdr-1.3.48/menuitems.c vdr-1.3.49/menuitems.c
--- vdr-1.3.48/menuitems.c	2006-04-23 13:39:48.000000000 +0200
+++ vdr-1.3.49/menuitems.c	2006-04-25 17:59:02.000000000 +0200
@@ -4,7 +4,7 @@
  * See the main source file 'vdr.c' for copyright information and
  * how to reach the author.
  *
- * $Id: menuitems.c 1.43 2006/04/23 11:39:48 kls Exp $
+ * $Id: menuitems.c 1.44 2006/04/25 15:59:02 kls Exp $
  */
 
 #include "menuitems.h"
@@ -80,10 +80,10 @@
        case kNone: break;
        case k0 ... k9:
             if (fresh) {
-               *value = 0;
+               newValue = 0;
                fresh = false;
                }
-            newValue = *value * 10 + (Key - k0);
+            newValue = newValue * 10 + (Key - k0);
             break;
        case kLeft: // TODO might want to increase the delta if repeated quickly?
             newValue = *value - 1;
diff -ruN vdr-1.3.48/newplugin vdr-1.3.49/newplugin
--- vdr-1.3.48/newplugin	2006-04-22 12:04:10.000000000 +0200
+++ vdr-1.3.49/newplugin	2006-04-24 19:18:41.000000000 +0200
@@ -12,7 +12,7 @@
 # See the main source file 'vdr.c' for copyright information and
 # how to reach the author.
 #
-# $Id: newplugin 1.27 2006/04/22 10:04:10 kls Exp $
+# $Id: newplugin 1.28 2006/04/24 17:18:41 kls Exp $
 
 $PLUGIN_NAME = $ARGV[0] || die "Usage: newplugin <name>\n";
 
@@ -85,7 +85,7 @@
 
 ### The version number of VDR's plugin API (taken from VDR's "config.h"):
 
-APIVERSION = \$(shell sed -ne '/define VDRVERSION/ { s/^.*"\(.*\)".*\$\$/\\1/; p }' \$(VDRDIR)/config.h)
+APIVERSION = \$(shell sed -ne '/define APIVERSION/s/^.*"\\(.*\\)".*\$\$/\\1/p' \$(VDRDIR)/config.h)
 
 ### The name of the distribution archive:
 
diff -ruN vdr-1.3.48/vdr.1 vdr-1.3.49/vdr.1
--- vdr-1.3.48/vdr.1	2006-04-14 15:03:18.000000000 +0200
+++ vdr-1.3.49/vdr.1	2006-04-28 15:06:35.000000000 +0200
@@ -8,9 +8,9 @@
 .\" License as specified in the file COPYING that comes with the
 .\" vdr distribution.
 .\"
-.\" $Id: vdr.1 1.23 2006/04/14 13:03:18 kls Exp $
+.\" $Id: vdr.1 1.24 2006/04/28 13:06:35 kls Exp $
 .\"
-.TH vdr 1 "14 Apr 2006" "1.3.47" "Video Disk Recorder"
+.TH vdr 1 "28 Apr 2006" "1.4.0" "Video Disk Recorder"
 .SH NAME
 vdr - the Video Disk Recorder
 .SH SYNOPSIS
diff -ruN vdr-1.3.48/vdr.5 vdr-1.3.49/vdr.5
--- vdr-1.3.48/vdr.5	2006-04-21 17:13:10.000000000 +0200
+++ vdr-1.3.49/vdr.5	2006-04-28 15:06:54.000000000 +0200
@@ -8,9 +8,9 @@
 .\" License as specified in the file COPYING that comes with the
 .\" vdr distribution.
 .\"
-.\" $Id: vdr.5 1.56 2006/04/21 15:13:10 kls Exp $
+.\" $Id: vdr.5 1.58 2006/04/28 13:06:54 kls Exp $
 .\"
-.TH vdr 5 "26 Mar 2006" "1.3.45" "Video Disk Recorder Files"
+.TH vdr 5 "28 Apr 2006" "1.4.0" "Video Disk Recorder Files"
 .SH NAME
 vdr file formats - the Video Disk Recorder Files
 .SH DESCRIPTION
@@ -118,7 +118,7 @@
 The symbol rate of this channel (DVB-S and DVB-C only).
 .TP
 .B VPID
-The video PID (set to '0' for radio channels, '1' for encrypted radio channels).
+The video PID (set to '0' for radio channels).
 If this channel uses a separate PCR PID, it follows the VPID, separated by a
 plus sign, as in
 .B ...:164+17:...
diff -ruN vdr-1.3.48/vdr.c vdr-1.3.49/vdr.c
--- vdr-1.3.48/vdr.c	2006-04-22 13:26:04.000000000 +0200
+++ vdr-1.3.49/vdr.c	2006-04-28 15:23:55.000000000 +0200
@@ -22,7 +22,7 @@
  *
  * The project's page is at http://www.cadsoft.de/vdr
  *
- * $Id: vdr.c 1.264 2006/04/22 11:26:04 kls Exp $
+ * $Id: vdr.c 1.266 2006/04/28 13:23:55 kls Exp $
  */
 
 #include <getopt.h>
@@ -792,9 +792,9 @@
                         }
                      // Switch the device to the transponder:
                      if (Device) {
-                        if (Device == cDevice::ActualDevice() && !Device->IsPrimaryDevice())
-                           cDevice::PrimaryDevice()->StopReplay(); // stop transfer mode
                         if (!Device->IsTunedToTransponder(Timer->Channel())) {
+                           if (Device == cDevice::ActualDevice() && !Device->IsPrimaryDevice())
+                              cDevice::PrimaryDevice()->StopReplay(); // stop transfer mode
                            dsyslog("switching device %d to channel %d", Device->DeviceNumber() + 1, Timer->Channel()->Number());
                            Device->SwitchChannel(Timer->Channel(), false);
                            DeviceUsed[Device->DeviceNumber()] = Now;
@@ -980,7 +980,7 @@
                           if (Interface->Confirm(tr("Recording - shut down anyway?")))
                              ForceShutdown = true;
                           }
-                       if (cPluginManager::Active(tr("shut down anyway?")))
+                       if (!cPluginManager::Active(tr("shut down anyway?")))
                           ForceShutdown = true;
                        LastActivity = 1; // not 0, see below!
                        UserShutdown = true;
