diff options
| -rw-r--r-- | CHANGES.AM | 4 | ||||
| -rw-r--r-- | extrecmenu.c | 42 | ||||
| -rw-r--r-- | mymenucommands.c | 4 | ||||
| -rw-r--r-- | mymenueditrecording.c | 64 | ||||
| -rw-r--r-- | mymenurecordings.c | 28 | ||||
| -rw-r--r-- | myreplaycontrol.c | 11 | ||||
| -rw-r--r-- | tools.c | 10 | ||||
| -rw-r--r-- | tools.h | 8 | 
8 files changed, 90 insertions, 81 deletions
| @@ -1,5 +1,9 @@  Changes by Andreas Mair <andreas _AT_ vdr-developer.org> +* 1.2-test1-AM2b +- fixed PES cutting using cutting queue (Reported by tomas @vdr-portal.de). +- fixed some gcc warnings and errors (Based on suggestions by Zzam @vdr-portal.de). +  * 1.2-test1-AM2a  - Fixed access to 001.vdr/00001.ts and index.vdr/index (Length in recordings list works again). diff --git a/extrecmenu.c b/extrecmenu.c index 3d466ee..0aac138 100644 --- a/extrecmenu.c +++ b/extrecmenu.c @@ -11,7 +11,7 @@  using namespace std; -static const char *VERSION        = "1.2-test1-am2a"; +static const char *VERSION        = "1.2-test1-am2b";  static const char *DESCRIPTION    = tr("Extended recordings menu");  static const char *MAINMENUENTRY  = "ExtRecMenu"; @@ -34,7 +34,7 @@ class cPluginExtrecmenu:public cPlugin      virtual const char *MainMenuEntry(void){return mysetup.HideMainMenuEntry?NULL:MAINMENUENTRY;}      virtual cOsdObject *MainMenuAction(void);      virtual cMenuSetupPage *SetupMenu(void); -    virtual bool SetupParse(const char *Name,const char *Value); +    virtual bool SetupParse(const char *_Name,const char *Value);      virtual bool Service(const char *Id,void *Data = NULL);      virtual const char **SVDRPHelpPages(void);      virtual cString SVDRPCommand(const char *Command,const char *Option,int &ReplyCode); @@ -53,7 +53,7 @@ const char *cPluginExtrecmenu::CommandLineHelp(void)    return NULL;  } -bool cPluginExtrecmenu::ProcessArgs(int argc,char *argv[]) +bool cPluginExtrecmenu::ProcessArgs(int /* argc */,char ** /* argv */)  {    return true;  } @@ -104,40 +104,40 @@ cMenuSetupPage *cPluginExtrecmenu::SetupMenu(void)    return new myMenuSetup();  } -bool cPluginExtrecmenu::SetupParse(const char *Name,const char *Value) +bool cPluginExtrecmenu::SetupParse(const char *_Name,const char *Value)  { -  if(!strcasecmp(Name,"IsOrgRecMenu")) +  if(!strcasecmp(_Name,"IsOrgRecMenu"))      return (mysetup.ReplaceOrgRecMenu==false); // vdr-replace patch -  if(!strcasecmp(Name,"ShowRecDate")) +  if(!strcasecmp(_Name,"ShowRecDate"))      mysetup.ShowRecDate=atoi(Value); -  else if(!strcasecmp(Name,"ShowRecTime")) +  else if(!strcasecmp(_Name,"ShowRecTime"))      mysetup.ShowRecTime=atoi(Value); -  else if(!strcasecmp(Name,"ShowRecLength")) +  else if(!strcasecmp(_Name,"ShowRecLength"))      mysetup.ShowRecLength=atoi(Value); -  else if(!strcasecmp(Name,"HideMainMenuEntry")) +  else if(!strcasecmp(_Name,"HideMainMenuEntry"))      mysetup.HideMainMenuEntry=atoi(Value); -  else if(!strcasecmp(Name,"ReplaceOrgRecMenu")) +  else if(!strcasecmp(_Name,"ReplaceOrgRecMenu"))      mysetup.ReplaceOrgRecMenu=atoi(Value); -  else if(!strcasecmp(Name,"PatchNew")) +  else if(!strcasecmp(_Name,"PatchNew"))      mysetup.PatchNew=atoi(Value); -  else if(!strcasecmp(Name,"ShowNewRecs")) +  else if(!strcasecmp(_Name,"ShowNewRecs"))      mysetup.ShowNewRecs=atoi(Value); -  else if(!strcasecmp(Name,"DescendSorting")) +  else if(!strcasecmp(_Name,"DescendSorting"))      mysetup.DescendSorting=atoi(Value); -  else if(!strcasecmp(Name,"GoLastReplayed")) +  else if(!strcasecmp(_Name,"GoLastReplayed"))      mysetup.GoLastReplayed=atoi(Value); -  else if(!strcasecmp(Name,"ReturnToPlugin")) +  else if(!strcasecmp(_Name,"ReturnToPlugin"))      mysetup.ReturnToPlugin=atoi(Value); -  else if(!strcasecmp(Name,"LimitBandwidth")) +  else if(!strcasecmp(_Name,"LimitBandwidth"))      mysetup.LimitBandwidth=atoi(Value); -  else if(!strcasecmp(Name,"UseVDRsRecInfoMenu")) +  else if(!strcasecmp(_Name,"UseVDRsRecInfoMenu"))      mysetup.UseVDRsRecInfoMenu=atoi(Value); -  else if(!strcasecmp(Name,"PatchFont")) +  else if(!strcasecmp(_Name,"PatchFont"))      mysetup.PatchFont=atoi(Value); -  else if(!strcasecmp(Name,"FileSystemFreeMB")) +  else if(!strcasecmp(_Name,"FileSystemFreeMB"))      mysetup.FileSystemFreeMB=atoi(Value); -  else if(!strcasecmp(Name,"UseCutterQueue")) +  else if(!strcasecmp(_Name,"UseCutterQueue"))      mysetup.UseCutterQueue=atoi(Value);    else      return false; @@ -165,7 +165,7 @@ const char **cPluginExtrecmenu::SVDRPHelpPages(void)   return NULL;  } -cString cPluginExtrecmenu::SVDRPCommand(const char *Command,const char *Option,int &ReplyCode) +cString cPluginExtrecmenu::SVDRPCommand(const char * /* Command */,const char * /* Option */,int & /* ReplyCode */)  {   return NULL;  } diff --git a/mymenucommands.c b/mymenucommands.c index 3c5099a..237c1f9 100644 --- a/mymenucommands.c +++ b/mymenucommands.c @@ -9,10 +9,10 @@  #include <vdr/interface.h>  #include "mymenucommands.h" -myMenuCommands::myMenuCommands(const char *Title,cCommands *Commands,const char *Parameters):cOsdMenu(Title) +myMenuCommands::myMenuCommands(const char *Title,cCommands *_Commands,const char *Parameters):cOsdMenu(Title)  {   SetHasHotkeys(); - commands=Commands; + commands=_Commands;   parameters=Parameters?strdup(Parameters):NULL;   for(cCommand *command=commands->First();command;command=commands->Next(command))    Add(new cOsdItem(hk(command->Title()))); diff --git a/mymenueditrecording.c b/mymenueditrecording.c index 2f4069b..bf05140 100644 --- a/mymenueditrecording.c +++ b/mymenueditrecording.c @@ -25,7 +25,7 @@ myMenuRenameRecording::myMenuRenameRecording(cRecording *Recording,const char *D   if(recording)   { -  char *p=strrchr(recording->Name(),'~'); +  char *p=(char*)strrchr(recording->Name(),'~'); //TODO    if(p)    {     strn0cpy(name,++p,sizeof(name)); @@ -106,7 +106,7 @@ eOSState myMenuRenameRecording::ProcessKey(eKeys Key)  // --- myMenuNewName ----------------------------------------------------------  bool myMenuMoveRecording::clearall=false; -char newname[128]; +char newname[128]; //TODO  class myMenuNewName:public cOsdMenu  { @@ -161,17 +161,17 @@ class myMenuMoveRecordingItem:public cOsdItem    myMenuMoveRecordingItem(const char *Title,int Level);    myMenuMoveRecordingItem(cRecording *Recording,int Level);    int Level(){return level;} -  void SetLevel(int Level){level=Level;} +  void SetLevel(int _Level){level=_Level;}  }; -myMenuMoveRecordingItem::myMenuMoveRecordingItem(const char *Title,int Level) +myMenuMoveRecordingItem::myMenuMoveRecordingItem(const char *Title,int _Level)  { - level=Level; + level=_Level;   title=strdup(Title);   SetText(title);  } -myMenuMoveRecordingItem::myMenuMoveRecordingItem(cRecording *Recording,int Level) +myMenuMoveRecordingItem::myMenuMoveRecordingItem(cRecording *Recording,int _Level)  {   level=0; @@ -181,7 +181,7 @@ myMenuMoveRecordingItem::myMenuMoveRecordingItem(cRecording *Recording,int Level    if(*s=='~')     level++;   } - if(Level<level) + if(_Level<level)   {    s=Recording->Name();    const char *p=s; @@ -189,7 +189,7 @@ myMenuMoveRecordingItem::myMenuMoveRecordingItem(cRecording *Recording,int Level    {     if(*s=='~')     { -    if(Level--) +    if(_Level--)       p=s+1;      else       break; @@ -234,11 +234,11 @@ void myMenuMoveRecording::Set()    char *lastitemtext=NULL;    myMenuMoveRecordingItem *lastitem=NULL; -  for(cRecording *recording=Recordings.First();recording;recording=Recordings.Next(recording)) +  for(cRecording *_recording=Recordings.First();_recording;_recording=Recordings.Next(_recording))    { -    if(!base||(strstr(recording->Name(),base)==recording->Name()&&recording->Name()[strlen(base)]=='~')) +    if(!base||(strstr(_recording->Name(),base)==_recording->Name()&&_recording->Name()[strlen(base)]=='~'))      { -      myMenuMoveRecordingItem *item=new myMenuMoveRecordingItem(recording,level); +      myMenuMoveRecordingItem *item=new myMenuMoveRecordingItem(_recording,level);        if(*item->Text())        {          if(lastitemtext&&!strcmp(lastitemtext,item->Text())) // same text @@ -286,7 +286,7 @@ eOSState myMenuMoveRecording::Open()  eOSState myMenuMoveRecording::MoveRec()  {    char *oldname=NULL; -  char *newname=NULL; +  char *_newname=NULL;    char *dir=NULL;    char *tmpdirbase=dirbase?ExchangeChars(strdup(dirbase),true):NULL;    char *tmpdirname=dirname?ExchangeChars(strdup(dirname),true):NULL; @@ -307,7 +307,7 @@ eOSState myMenuMoveRecording::MoveRec()          asprintf(&dir,"%s%s%s",base?base:"",base?"~":"",item->Text());        else  // needed for move recording menu        { -        char *p=strrchr(recording->Name(),'~'); +        const char *p=strrchr(recording->Name(),'~');          asprintf(&dir,"%s%s%s~%s",base?base:"",base?"~":"",item->Text(),p?p+1:recording->Name());        }      } @@ -315,7 +315,7 @@ eOSState myMenuMoveRecording::MoveRec()      {        if(!dirname)        { -        char *p=strrchr(recording->Name(),'~'); +        const char *p=strrchr(recording->Name(),'~');          asprintf(&dir,"%s",p?++p:recording->Name());        }      } @@ -326,17 +326,17 @@ eOSState myMenuMoveRecording::MoveRec()        asprintf(&dir,"%s",base);      else      { -      char *p=strrchr(recording->Name(),'~'); +      const char *p=strrchr(recording->Name(),'~');        asprintf(&dir,"%s~%s",base,p?p:recording->Name());      }    }    if(dir)      dir=ExchangeChars(dir,true); -  asprintf(&newname,"%s%s%s%s",VideoDirectory,dir?"/":"",dir?dir:"",strrchr(dirname?oldname:recording->FileName(),'/')); +  asprintf(&_newname,"%s%s%s%s",VideoDirectory,dir?"/":"",dir?dir:"",strrchr(dirname?oldname:recording->FileName(),'/'));    // getting existing part of target path -  string path=newname; +  string path=_newname;    string::size_type pos=string::npos;    do      pos=path.rfind('/',pos)-1; @@ -350,7 +350,7 @@ eOSState myMenuMoveRecording::MoveRec()    // are source and target at the same filesystem?    if(stat1.st_dev==stat2.st_dev)    { -    if(MoveRename(oldname,newname,dirname?NULL:recording,true)) +    if(MoveRename(oldname,_newname,dirname?NULL:recording,true))      {        clearall=true;        state=osBack; @@ -361,7 +361,7 @@ eOSState myMenuMoveRecording::MoveRec()      struct statvfs fsstat;      if(!statvfs(path.c_str(),&fsstat))      { -      int freemb=int(fsstat.f_bavail/(1024.0*1024.0/fsstat.f_bsize)); +      int freemb=int((double)fsstat.f_bavail/(1024.0*1024.0/fsstat.f_bsize));        int recmb=0;        // moving a single recording @@ -370,7 +370,7 @@ eOSState myMenuMoveRecording::MoveRec()          recmb=DirSizeMB(recording->FileName());          if(freemb-recmb > 0  || Interface->Confirm(tr("Target filesystem filled - try anyway?")))          { -          MoveCutterThread->AddToMoveList(oldname,newname); +          MoveCutterThread->AddToMoveList(oldname,_newname);            clearall=true;            state=osBack;          } @@ -380,7 +380,7 @@ eOSState myMenuMoveRecording::MoveRec()        {          string buf=oldname;          buf+="/"; -        if(!buf.compare(0,buf.length(),newname)) +        if(!buf.compare(0,buf.length(),_newname))            Skins.Message(mtError,tr("Moving into own sub-directory not allowed!"));          else          { @@ -397,16 +397,16 @@ eOSState myMenuMoveRecording::MoveRec()              {                if(!strncmp(oldname,rec->FileName(),strlen(oldname)))                { -                char *buf=ExchangeChars(strdup(oldname+strlen(VideoDirectory)+1),false); +                char *_buf=ExchangeChars(strdup(oldname+strlen(VideoDirectory)+1),false); -                if(strcmp(rec->Name(),buf)) +                if(strcmp(rec->Name(),_buf))                  { -                  free(buf); -                  asprintf(&buf,"%s%s",newname,rec->FileName()+strlen(oldname)); +                  free(_buf); +                  asprintf(&_buf,"%s%s",_newname,rec->FileName()+strlen(oldname)); -                  MoveCutterThread->AddToMoveList(rec->FileName(),buf); +                  MoveCutterThread->AddToMoveList(rec->FileName(),_buf);                  } -                free(buf); +                free(_buf);                }              }              clearall=true; @@ -422,7 +422,7 @@ eOSState myMenuMoveRecording::MoveRec()      }    }    free(oldname); -  free(newname); +  free(_newname);    free(dir);    free(tmpdirbase);    free(tmpdirname); @@ -483,17 +483,17 @@ eOSState myMenuRecordingDetails::ProcessKey(eKeys Key)      if(Key==kOk)      {        char *oldname=strdup(recording->FileName()); -      char *newname=strdup(recording->FileName()); +      char *_newname=strdup(recording->FileName()); -      sprintf(newname+strlen(newname)-9,"%02d.%02d.rec",priority,lifetime); +      sprintf(_newname+strlen(_newname)-9,"%02d.%02d.rec",priority,lifetime); -      if(MoveRename(oldname,newname,recording,false)) +      if(MoveRename(oldname,_newname,recording,false))          state=osBack;        else          state=osContinue;        free(oldname); -      free(newname); +      free(_newname);      }    }    return state; diff --git a/mymenurecordings.c b/mymenurecordings.c index 607785d..4286d25 100644 --- a/mymenurecordings.c +++ b/mymenurecordings.c @@ -285,17 +285,17 @@ myMenuRecordingsItem::myMenuRecordingsItem(cRecording *Recording,int Level)          titlebuffer << '\t';        // recording title -      string s=Recording->Name(); -      string::size_type i=s.rfind('~'); +      string _s=Recording->Name(); +      string::size_type i=_s.rfind('~');        if(i!=string::npos)        { -        titlebuffer << s.substr(i+1,s.length()-i); -        idbuffer << s.substr(i+1,s.length()-i); +        titlebuffer << _s.substr(i+1,_s.length()-i); +        idbuffer << _s.substr(i+1,_s.length()-i);        }        else        { -        titlebuffer << s; -        idbuffer << s; +        titlebuffer << _s; +        idbuffer << _s;        }        title=strdup(titlebuffer.str().c_str()); @@ -336,7 +336,7 @@ void myMenuRecordingsItem::IncrementCounter(bool IsNew)                       newentries,                       (!mysetup.ShowRecDate&&!mysetup.ShowRecTime&&!mysetup.ShowRecLength)?"\t":"",                       (mysetup.ShowRecDate||mysetup.ShowRecTime||mysetup.ShowRecLength)?"\t":"", -                     (mysetup.ShowRecDate&&mysetup.ShowRecTime||mysetup.ShowRecTime&&mysetup.ShowRecLength||mysetup.ShowRecLength&&mysetup.ShowRecDate)?"\t":"", +                     ((mysetup.ShowRecDate&&mysetup.ShowRecTime)||(mysetup.ShowRecTime&&mysetup.ShowRecLength)||(mysetup.ShowRecLength&&mysetup.ShowRecDate))?"\t":"",                       (mysetup.ShowRecDate&&mysetup.ShowRecTime&&mysetup.ShowRecLength)?"\t":"",                       name);    } @@ -348,7 +348,7 @@ void myMenuRecordingsItem::IncrementCounter(bool IsNew)                       myStrReplace(entries.str(),' ',Icons::FixedBlank()).c_str(),                       (!mysetup.ShowRecDate&&!mysetup.ShowRecTime&&!mysetup.ShowRecLength)?"\t":"",                       (mysetup.ShowRecDate||mysetup.ShowRecTime||mysetup.ShowRecLength)?"\t":"", -                     (mysetup.ShowRecDate&&mysetup.ShowRecTime||mysetup.ShowRecTime&&mysetup.ShowRecLength||mysetup.ShowRecLength&&mysetup.ShowRecDate)?"\t":"", +                     ((mysetup.ShowRecDate&&mysetup.ShowRecTime)||(mysetup.ShowRecTime&&mysetup.ShowRecLength)||(mysetup.ShowRecLength&&mysetup.ShowRecDate))?"\t":"",                       (mysetup.ShowRecDate&&mysetup.ShowRecTime&&mysetup.ShowRecLength)?"\t":"",                       name);    } @@ -443,7 +443,7 @@ int myMenuRecordings::FreeMB()          struct statvfs fsstat;          if(!statvfs(path.c_str(),&fsstat))          { -          freediskspace=int(fsstat.f_bavail/(1024.0*1024.0/fsstat.f_bsize)); +          freediskspace=int((double)fsstat.f_bavail/(1024.0*1024.0/fsstat.f_bsize));            for(cRecording *rec=DeletedRecordings.First();rec;rec=DeletedRecordings.Next(rec))            { @@ -560,13 +560,13 @@ void myMenuRecordings::SetHelpKeys()  }  // create the menu list -void myMenuRecordings::Set(bool Refresh,char *current) +void myMenuRecordings::Set(bool Refresh,char *_current)  { -  const char *lastreplayed=current?current:myReplayControl::LastReplayed(); +  const char *lastreplayed=_current?_current:myReplayControl::LastReplayed();    cThreadLock RecordingsLock(&Recordings); -  if(Refresh && !current) +  if(Refresh && !_current)    {      fsid=0;      myMenuRecordingsItem *item=(myMenuRecordingsItem*)Get(Current()); @@ -682,7 +682,7 @@ bool myMenuRecordings::Open()  eOSState myMenuRecordings::Play()  {    char *msg=NULL; -  char *name=NULL; +  const char *name=NULL;    char path[MaxFileName]; @@ -940,7 +940,7 @@ eOSState myMenuRecordings::Info(void)    if(item && !item->IsDirectory())    {      cRecording *recording=GetRecording(item); -    if(mysetup.UseVDRsRecInfoMenu && (!recording || recording && !recording->Info()->Title())) +    if(mysetup.UseVDRsRecInfoMenu && (!recording || (recording && !recording->Info()->Title())))        return osContinue;      else        return AddSubMenu(new myMenuRecordingInfo(recording,true)); diff --git a/myreplaycontrol.c b/myreplaycontrol.c index 9ba50da..248fa1d 100644 --- a/myreplaycontrol.c +++ b/myreplaycontrol.c @@ -47,10 +47,15 @@ eOSState myReplayControl::ProcessKey(eKeys Key)                Skins.Message(mtError,tr("Recording already in cutter queue!"));              else              { -              cMarks marks; -              marks.Load(filename); +              cMarks _marks; +#if VDRVERSNUM >= 10703 +              cRecording Recording(filename); +              _marks.Load(filename, Recording.FramesPerSecond(), Recording.IsPesRecording()); +#else +              _marks.Load(filename); +#endif -              if(!marks.Count()) +              if(!_marks.Count())                  Skins.Message(mtError,tr("No editing marks defined!"));                else                { @@ -213,10 +213,10 @@ char *myRecListItem::StripEpisodeName(char *s)      if(SortByName)        *s1=1;      else -      *(s2+1)=255; +      *(s2+1)=(char)255;    }    else -    *s1=255; +    *s1=(char)255;    if(s1 && s2 && !SortByName)      memmove(s1+1,s2,t-s2+1); @@ -299,7 +299,7 @@ void WorkerThread::Action()        if(editedfilename && RemoveVideoFile(editedfilename) && MakeDirs(editedfilename,true))        {          char *s=strdup(editedfilename); -        char *e=strrchr(s,'.'); +        char *e=(char*)strrchr(s,'.'); //TODO          if(e)          {            if(!strcmp(e,".rec")) @@ -494,7 +494,7 @@ void WorkerThread::Cut(string From,string To)        lastiframe=0;        if(cutin)        { -#if VDRVERSNUM >= 10703 +#if VDRVERSNUM >= 10706          if(isPesRecording)            cRemux::SetBrokenLink(buffer,length);          else @@ -510,7 +510,7 @@ void WorkerThread::Cut(string From,string To)        error="safe_write";        break;      } -    if(!toindex->Write(picturetype,tofilename->Number(),filesize)) +    if(!toindex->Write(picturetype,(uint16_t)(tofilename->Number()),filesize))      {        error="toindex";        break; @@ -5,7 +5,7 @@ class SortListItem:public cListObject    private:      std::string path;    public: -    SortListItem(std::string Path){path=Path;}; +    SortListItem(std::string _Path){path=_Path;};      std::string Path(){return path;}  }; @@ -50,7 +50,7 @@ class MoveListItem:public cListObject      std::string from;      std::string to;    public: -    MoveListItem(std::string From,std::string To){from=From;to=To;moveinprogress=false;movecanceled=false;} +    MoveListItem(std::string _From,std::string _To){from=_From;to=_To;moveinprogress=false;movecanceled=false;}      std::string From(){return from;}      std::string To(){return to;}      void SetMoveInProgress(){moveinprogress=true;} @@ -72,8 +72,8 @@ class CutterListItem:public cListObject      std::string filename;      std::string newfilename;    public: -    CutterListItem(std::string FileName){filename=FileName;cutinprogress=false;}; -    void SetNewFileName(std::string NewFileName){newfilename=NewFileName;} +    CutterListItem(std::string _FileName){filename=_FileName;cutinprogress=false;}; +    void SetNewFileName(std::string _NewFileName){newfilename=_NewFileName;}      std::string FileName(){return filename;}      std::string NewFileName(){return newfilename;}      void SetCutInProgress(){cutinprogress=true;} | 
