Fixed handling '/' and '~' in recording file names in case DirectoryEncoding is used

This commit is contained in:
Klaus Schmidinger 2013-04-11 08:24:04 +02:00
parent e5971d2684
commit 1b1dc6d775
3 changed files with 8 additions and 3 deletions

View File

@ -2832,6 +2832,8 @@ Lars Hanisch <dvb@flensrocker.de>
for fixing a typo in skins.h
for fixing some #include statements in plugins to use <vdr/...> instead of "vdr/..."
for reporting an invalid line in channels.conf.terr
for fixing handling '/' and '~' in recording file names in case DirectoryEncoding is
used
Alex Lasnier <alex@fepg.org>
for adding tuning support for ATSC devices

View File

@ -7773,7 +7773,6 @@ Video Disk Recorder Revision History
Dominic Evans).
- Updated the default channels.conf file.
2013-03-31: Version 2.0.0
- Updated the Lithuanian OSD texts (thanks to Valdemaras Pipiras).
@ -7783,10 +7782,12 @@ Video Disk Recorder Revision History
- Bumped all version numbers to 2.0.0.
- Official release.
2013-04-09: Version 2.0.1
2013-04-11: Version 2.0.1
- Fixed initializing cDevice::keepTracks.
- Fixed an endless loop in cTextWrapper::Set() in case the given Width is smaller than
one character (reported by Stefan Braun).
- Added definitions for older DVB API versions, back until 5.0 (based on a patch from
Udo Richter).
- Fixed handling '/' and '~' in recording file names in case DirectoryEncoding is
used (thanks to Lars Hanisch).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: recording.c 2.91 2013/03/11 10:34:41 kls Exp $
* $Id: recording.c 2.91.1.1 2013/04/11 08:20:03 kls Exp $
*/
#include "recording.h"
@ -561,6 +561,7 @@ char *ExchangeChars(char *s, bool ToFileSystem)
// characters that can be mapped to other characters:
case ' ': *p = '_'; break;
case FOLDERDELIMCHAR: *p = '/'; break;
case '/': *p = FOLDERDELIMCHAR; break;
// characters that have to be encoded:
default:
if (NeedsConversion(p)) {
@ -583,6 +584,7 @@ char *ExchangeChars(char *s, bool ToFileSystem)
switch (*p) {
// mapped characters:
case '_': *p = ' '; break;
case FOLDERDELIMCHAR: *p = '/'; break;
case '/': *p = FOLDERDELIMCHAR; break;
// encoded characters:
case '#': {