[systemd-devel] [RFC] load-fragment: use unquote_first_word in config_parse_exec

Filipe Brandenburger filbranden at google.com
Wed Jun 3 20:34:53 PDT 2015


Hi,

This commit was not moved to GitHub, it's under review here:
https://github.com/systemd/systemd/pull/44

On Sun, May 31, 2015 at 12:06 AM, Andrei Borzenkov <arvidjaar at gmail.com> wrote:
> В Sat, 30 May 2015 23:29:29 -0700 Filipe Brandenburger <filbranden at google.com> пишет:
>> - Handling a \; is ugly, it looks like a hack... unquote_first_word is
>>   not equipped to recognize that sequence, so I had to move it outside
>>   unquote_first_word looking for those two characters followed by
>>   whitespace explicitly. But then, something like ';' or ";" will be
>>   recognized as a command separator, is that OK?
>
> I do not think it's OK. Having quoted string act like a separator is
> definitely unexpected and confusing.

Addressed. Now ";" or ';' will turn into a literal semicolon, so will
\; only when it's on its own, and only a single ; on its own will be
recognized as a command separator.

>> - We do something different for empty string (clear the command list)
>>   than we do for just whitespace. This is pre-existing. Maybe we need to
>>   fix that? I put a comment on that case, that branch is triggered both
>>   in the "just whitespace" case as well as right after a semicolon
>>   command separator.
>
> Not sure I understand what you mean. Do you suggest that
>
> ExecStart=/usr/bin/foo ; ; /usr/bin/bar
>
> should discard /usr/bin/foo? Or that it does it already?

I added a test case to cover two semicolons in a row. With the new
code it breaks as it thinks ";" is a new command name, I think that's
appropriate enough, let me know if you think otherwise.

Cheers!
Filipe


More information about the systemd-devel mailing list