summaryrefslogtreecommitdiff
path: root/display.c
diff options
context:
space:
mode:
Diffstat (limited to 'display.c')
-rw-r--r--display.c51
1 files changed, 14 insertions, 37 deletions
diff --git a/display.c b/display.c
index 72b42cd..371c4bc 100644
--- a/display.c
+++ b/display.c
@@ -1270,43 +1270,20 @@ cxType cText2SkinDisplayMenu::GetTokenData(const txToken &Token)
#endif
case tRecordingSize:
- if (mRecording != NULL) {
- bool bRet=false;
- long long size = 0;
- int nFiles;
- struct stat fileinfo; // Holds file information structure
- char *cmd = NULL;
- cReadLine reader;
- asprintf(&cmd, "find '%s' -follow -type f -name '*.*'|sort ", mRecording->FileName());
-
- FILE *p = popen(cmd, "r");
- int ret=0;
- if (p)
- {
- char *s;
-
- while ((s = reader.Read(p)) != NULL)
- {
- if ((ret=stat(s, &fileinfo)) != -1)
- {
- size += (long long)fileinfo.st_size;
- nFiles++;
- }
- }
-
- bRet=true;
- }
-
- pclose(p);
- delete cmd;
-
- return (long)(size / 1024 / 1024); // [MB]
- }
- else
- {
- return false;
- }
-
+ return mRecording != NULL
+ ? (cxType)GetRecordingSize(mRecording->FileName())
+ : (cxType)false;
+
+ case tRecordingLength:
+ return mRecording != NULL
+ ? (cxType)GetRecordingLength(mRecording->FileName())
+ : (cxType)false;
+
+ case tRecordingCuttedLength:
+ return mRecording != NULL
+ ? (cxType)GetRecordingCuttedLength(mRecording->FileName())
+ : (cxType)false;
+
default:
return cText2SkinRender::GetTokenData(Token);
}