diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2013-03-12 09:44:46 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2013-03-12 09:44:46 +0100 |
commit | 7100e4c209ce2433359362ab7bb3209ceac027c0 (patch) | |
tree | 3f612b2efdc024556a4606295fb661d976a36b62 | |
parent | ccbe1905a130df54e91b34d9e53d33b359462a3e (diff) | |
download | vdr-7100e4c209ce2433359362ab7bb3209ceac027c0.tar.gz vdr-7100e4c209ce2433359362ab7bb3209ceac027c0.tar.bz2 |
The parameters PATH and NAME to the --dirnames command line option may now be left empty to use the default values if only ENC shall be set
-rw-r--r-- | HISTORY | 4 | ||||
-rw-r--r-- | vdr.1 | 5 | ||||
-rw-r--r-- | vdr.c | 32 |
3 files changed, 25 insertions, 16 deletions
@@ -7730,7 +7730,7 @@ Video Disk Recorder Revision History to avoid problems with SD-FF cards in case the user switches to the "ST:TNG" or "Classic" skin. -2013-03-11: Version 1.7.41 +2013-03-12: Version 1.7.41 - Updated the Hungarian OSD texts (thanks to István Füley). - Updated the Russian OSD texts (thanks to Oleg Roitburd). @@ -7740,3 +7740,5 @@ Video Disk Recorder Revision History - The 'plugins' target of the VDR Makefile now also copies files matching the wildcard "lib$$i-*.so" (previously only "libvdr-*.so") and also descends into subdirectories of the plugin source. +- The parameters PATH and NAME to the --dirnames command line option may now be left + empty to use the default values if only ENC shall be set. @@ -8,7 +8,7 @@ .\" License as specified in the file COPYING that comes with the .\" vdr distribution. .\" -.\" $Id: vdr.1 2.14 2013/03/11 13:16:50 kls Exp $ +.\" $Id: vdr.1 2.15 2013/03/12 09:42:25 kls Exp $ .\" .TH vdr 1 "31 Mar 2013" "2.0" "Video Disk Recorder" .SH NAME @@ -57,12 +57,13 @@ Run in daemon mode (implies \-\-no\-kbd). Use only the given DVB device (\fInum\fR = 0, 1, 2...). There may be several \fB\-D\fR options (by default all DVB devices will be used). .TP -.BI \-\-dirnames= path[,name[,enc]] +.BI \-\-dirnames= path [, name [, enc ]] Set the maximum directory path length to \fIpath\fR (default is the maximum value allowed on the system). If \fIname\fR is also given, it defines the maximum directory name length (default is the maximum value allowed on the system). The optional \fIenc\fR can be 0 or 1, and controls whether special characters in directory names are encoded as hex values (default: 0). +If \fIpath\fR or \fIname\fR are left empty (as in ",,1" to only set \fIenc\fR), the defaults apply. The length of the video directory name and that of the actual recording directory is subtracted from \fIpath\fR, to make sure the directory path will never become too long. .TP @@ -22,7 +22,7 @@ * * The project's page is at http://www.tvdr.de * - * $Id: vdr.c 2.53 2013/03/11 11:51:27 kls Exp $ + * $Id: vdr.c 2.54 2013/03/12 09:23:33 kls Exp $ */ #include <getopt.h> @@ -280,31 +280,35 @@ int main(int argc, char *argv[]) return 2; case 'd' | 0x100: { char *s = optarg; - int n = strtol(s, &s, 10); - if (n <= 0 || n >= PATH_MAX) { // PATH_MAX includes the terminating 0 - fprintf(stderr, "vdr: invalid directory path length: %s\n", optarg); - return 2; + if (*s != ',') { + int n = strtol(s, &s, 10); + if (n <= 0 || n >= PATH_MAX) { // PATH_MAX includes the terminating 0 + fprintf(stderr, "vdr: invalid directory path length: %s\n", optarg); + return 2; + } + DirectoryPathMax = n; } - DirectoryPathMax = n; if (!*s) break; if (*s++ != ',') { fprintf(stderr, "vdr: invalid delimiter: %s\n", optarg); return 2; } - n = strtol(s, &s, 10); - if (n <= 0 || n > NAME_MAX) { // NAME_MAX excludes the terminating 0 - fprintf(stderr, "vdr: invalid directory name length: %s\n", optarg); - return 2; + if (*s != ',') { + int n = strtol(s, &s, 10); + if (n <= 0 || n > NAME_MAX) { // NAME_MAX excludes the terminating 0 + fprintf(stderr, "vdr: invalid directory name length: %s\n", optarg); + return 2; + } + DirectoryNameMax = n; } - DirectoryNameMax = n; if (!*s) break; if (*s++ != ',') { fprintf(stderr, "vdr: invalid delimiter: %s\n", optarg); return 2; } - n = strtol(s, &s, 10); + int n = strtol(s, &s, 10); if (n != 0 && n != 1) { fprintf(stderr, "vdr: invalid directory encoding: %s\n", optarg); return 2; @@ -480,7 +484,9 @@ int main(int argc, char *argv[]) " the maximum directory name length (default: %d);\n" " the optional ENC can be 0 or 1, and controls whether\n" " special characters in directory names are encoded as\n" - " hex values (default: 0)\n" + " hex values (default: 0); if PATH or NAME are left\n" + " empty (as in \",,1\" to only set ENC), the defaults\n" + " apply\n" " --edit=REC cut recording REC and exit\n" " -E FILE, --epgfile=FILE write the EPG data into the given FILE (default is\n" " '%s' in the video directory)\n" |