Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[vdr] Re: Problems with exit-states (VDR-1.2.2)
Rene Bartsch wrote:
>
> Am Mit, 2003-08-27 um 13.09 schrieb Klaus Schmidinger:
>
> >
> > However, I can't see anything wrong with quotes or backslashes, so I
> > take that remark ("Just because one user has trouble using quotes...")
> > back and apologize.
> >
> > I'll see if I can do some debugging tonight to check whether there is
> > a bug in parsing this line.
> >
> > Are you sure that both the "mp3" and the "mplayer" plugin recognize
> > the option "--mount"?
> >
>
> That's quite strange. The options "-B" or "--cddb" are never accepted,
> "-m" for mount works everytime and "--mount" works sometimes. There's no
> real rule, but it seems to be related to having several plugins with at
> least two options in command-line.
>
> If I remove mp3 from command-line, it's mplayer-plugin. After
> mplayer-plugin it's remote-plugin, ...
>
> It also seems the short options (e.g. "-m") work most times, while the
> long options (e.g. "--mount=" are denied nearly every time).
I did a lot of testing now, with several plugins that provide long options,
but was unable to create a case where an error as reported by you would have
happened.
Could you please apply the following patch to a plain vanilla VDR 1.2.4
version and do a test where the error happens? Then please send me the
resulting output.
I did see one thing that's not correct: if the command line for a plugin
contains trailing blanks, each of those results in an additional, empty
argv[] entry. However, I don't believe that this could be what's causing
your problem.
Klaus
--- vdr.c 2003/08/24 11:18:04 1.166
+++ vdr.c 2003/08/30 13:58:47
@@ -81,6 +81,10 @@
{
// Save terminal settings:
+ fprintf(stderr, "vdr: argc = %d\n", argc);
+ for (int i = 0; i < argc; i++)
+ fprintf(stderr, " '%s'\n", argv[i]);
+
struct termios savedTm;
bool HasStdin = (tcgetpgrp(STDIN_FILENO) == getpid() || getppid() != (pid_t)1) && tcgetattr(STDIN_FILENO, &savedTm) == 0;
--- plugin.c 2003/05/09 15:01:26 1.9
+++ plugin.c 2003/08/30 13:57:48
@@ -212,6 +212,9 @@
if (argc)
plugin->SetName(argv[0]);
optind = 0; // to reset the getopt() data
+ fprintf(stderr, "plugin: '%s' argc = %d\n", plugin->Name(), argc);
+ for (int i = 0; i < argc; i++)
+ fprintf(stderr, " '%s'\n", argv[i]);
return !argc || plugin->ProcessArgs(argc, argv);
}
}
--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe vdr" as subject.
Home |
Main Index |
Thread Index