diff options
-rw-r--r-- | HISTORY | 7 | ||||
-rw-r--r-- | README | 8 | ||||
-rw-r--r-- | extrecmenu.c | 2 | ||||
-rw-r--r-- | mymenueditrecording.c | 18 | ||||
-rw-r--r-- | mymenurecordings.c | 2 |
5 files changed, 26 insertions, 11 deletions
@@ -1,6 +1,13 @@ VDR Plugin 'extrecmenu' Revision History ---------------------------------------- +2006-19-06: Version 0.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 + 2006-11-06: Version 0.12 - reworked layout - added possibility to set sorting mode for each directory @@ -31,6 +31,9 @@ the Makefile if you use the PIN-plugin. You have to place the script permissions) for the DVDArchive-patch functionality. See the top of 'dvdarchive.sh' for the adjustments you maybe have to take. +If your /video-directory is a nfs mount, you have to mount it with the option +'hard' to make renaming and moving of recordings work. + Check the options at the setup menu of the plugin. They are self-explaining. There is a patch for VDR in contrib/ for replacing VDR's recordings menu with @@ -38,8 +41,9 @@ this plugin. You have to set the corresponding option at the setup menu of the plugin! There ist a patched TTF-Font for Enigma containing the dvd and alternative new -symbols. See this post at vdr-portal.de: -http://www.vdr-portal.de/board/thread.php?postid=447376#post447376 +symbols. See this posts at vdr-portal.de: +http://www.vdr-portal.de/board/thread.php?postid=483800#post483800 +http://www.vdr-portal.de/board/thread.php?postid=483988#post483988 ------------------------------------------------------------------------------- Handling diff --git a/extrecmenu.c b/extrecmenu.c index ec53d96..585b103 100644 --- a/extrecmenu.c +++ b/extrecmenu.c @@ -8,7 +8,7 @@ #include "i18n.h" #include "tools.h" -static const char *VERSION = "0.12"; +static const char *VERSION = "0.12a"; static const char *DESCRIPTION = "Extended recordings menu"; static const char *MAINMENUENTRY = "ExtRecMenu"; 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; } diff --git a/mymenurecordings.c b/mymenurecordings.c index eac71d8..2733409 100644 --- a/mymenurecordings.c +++ b/mymenurecordings.c @@ -869,7 +869,7 @@ eOSState myMenuRecordings::ProcessKey(eKeys Key) { myMenuRecordingsItem *item=(myMenuRecordingsItem*)Get(Current()); #ifdef WITHPINPLUGIN - if(cStatus::MsgReplayProtected(GetRecording(item),item->Name(),base,item->IsDirectory())==true) + if(item&&cStatus::MsgReplayProtected(GetRecording(item),item->Name(),base,item->IsDirectory())==true) return osContinue; #endif if(!HasSubMenu()&&item) |