diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 683bf0db..75696641 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -3103,6 +3103,7 @@ Chris Mayo for reporting a problem with detecting frames on radio channels for fixing the link to "svdrpsend (1)" in the vdr.1 man page for updating links in the INSTALL file + for reporting double slashes in file names processed with AddDirectory() Dominic Evans for making the SVDRP command LSTC accepts channel IDs diff --git a/HISTORY b/HISTORY index 4c49f955..d5c25527 100644 --- a/HISTORY +++ b/HISTORY @@ -9140,3 +9140,5 @@ Video Disk Recorder Revision History functions are called. - Fixed a possible crash in cStateLockLog. - Updated the Italian OSD texts (thanks to Diego Pierotto). +- Now skipping a leading '/' in AddDirectory(), to avoid double slashes (reported by + Chris Mayo). diff --git a/tools.c b/tools.c index a8e6af1e..042e56c7 100644 --- a/tools.c +++ b/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 4.6 2017/05/09 08:32:54 kls Exp $ + * $Id: tools.c 4.7 2017/06/23 09:39:45 kls Exp $ */ #include "tools.h" @@ -371,6 +371,8 @@ bool StrInArray(const char *a[], const char *s) cString AddDirectory(const char *DirName, const char *FileName) { + if (*FileName == '/') + FileName++; return cString::sprintf("%s/%s", DirName && *DirName ? DirName : ".", FileName); }