diff options
author | Martin Prochnow <nordlicht@martins-kabuff.de> | 2006-06-20 16:18:09 +0200 |
---|---|---|
committer | Andreas Mair <andreas@vdr-developer.org> | 2006-06-20 16:18:09 +0200 |
commit | 978605b653893d76a6e34f923d74bb64dfb957ca (patch) | |
tree | cdc9149233b6219851ff1f2e7d24a3f1a5f370cf /mymenueditrecording.c | |
parent | 75cebc37f280719c40824a6f76b43018f6c71d16 (diff) | |
download | vdr-plugin-extrecmenu-978605b653893d76a6e34f923d74bb64dfb957ca.tar.gz vdr-plugin-extrecmenu-978605b653893d76a6e34f923d74bb64dfb957ca.tar.bz2 |
Version 0.12av0.12a
- fixed a bug if you compiled the plugin with support for the PIN-plugin; thanks to Thiemo Gehrke for reporting
- fixed another bug with editing recordings if VDR is compiled with VFAT=1 or started with the option --vfat; based upon a patch of berndm from vdr-portal.de
Diffstat (limited to 'mymenueditrecording.c')
-rw-r--r-- | mymenueditrecording.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/mymenueditrecording.c b/mymenueditrecording.c index 893a014..55eb3ec 100644 --- a/mymenueditrecording.c +++ b/mymenueditrecording.c @@ -14,8 +14,8 @@ myMenuRenameRecording::myMenuRenameRecording(myMenuRecordings *MenuRecordings,cR isdir=false; menurecordings=MenuRecordings; recording=Recording; - dirbase=DirBase?strdup(DirBase):NULL; - dirname=DirName?strdup(DirName):NULL; + dirbase=DirBase?ExchangeChars(strdup(DirBase),true):NULL; + dirname=DirName?ExchangeChars(strdup(DirName),true):NULL; strn0cpy(name,"",sizeof(name)); strn0cpy(path,"",sizeof(path)); @@ -60,8 +60,8 @@ eOSState myMenuRenameRecording::ProcessKey(eKeys Key) { char *oldname=NULL; char *newname=NULL; - char *tmppath=path[0]?strdup(path):NULL; - char *tmpname=name[0]?strdup(name):NULL; + char *tmppath=path[0]?ExchangeChars(strdup(path),true):NULL; + char *tmpname=name[0]?ExchangeChars(strdup(name),true):NULL; if(strchr(name,'.')==name||!strlen(name)) { @@ -71,11 +71,11 @@ eOSState myMenuRenameRecording::ProcessKey(eKeys Key) } if(isdir) - asprintf(&oldname,"%s%s%s/%s",VideoDirectory,tmppath?"/":"",dirbase?ExchangeChars(dirbase,true):"",ExchangeChars(dirname,true)); + asprintf(&oldname,"%s%s%s/%s",VideoDirectory,tmppath?"/":"",dirbase?dirbase:"",dirname); else oldname=strdup(recording->FileName()); - asprintf(&newname,"%s%s%s/%s%s",VideoDirectory,tmppath?"/":"",tmppath?ExchangeChars(tmppath,true):"",ExchangeChars(tmpname,true),isdir?"":strrchr(recording->FileName(),'/')); + asprintf(&newname,"%s%s%s/%s%s",VideoDirectory,tmppath?"/":"",tmppath?tmppath:"",tmpname,isdir?"":strrchr(recording->FileName(),'/')); if(MoveRename(oldname,newname,isdir?NULL:recording,false)) { @@ -281,11 +281,13 @@ eOSState myMenuMoveRecording::MoveRec() char *oldname=NULL; char *newname=NULL; char *dir=NULL; + char *tmpdirbase=dirbase?ExchangeChars(strdup(dirbase),true):NULL; + char *tmpdirname=dirname?ExchangeChars(strdup(dirname),true):NULL; eOSState state=osContinue; if(dirname) - asprintf(&oldname,"%s%s%s/%s",VideoDirectory,dirbase?"/":"",dirbase?ExchangeChars(dirbase,true):"",ExchangeChars(dirname,true)); + asprintf(&oldname,"%s%s%s/%s",VideoDirectory,dirbase?"/":"",tmpdirbase?tmpdirbase:"",tmpdirname); else oldname=strdup(recording->FileName()); @@ -338,6 +340,8 @@ eOSState myMenuMoveRecording::MoveRec() free(oldname); free(newname); free(dir); + free(tmpdirbase); + free(tmpdirname); return state; } |