[PATCH xorg-gtest] process: document that va_args for Start() must end with zero-length string

Chase Douglas chase.douglas at canonical.com
Tue Aug 14 10:19:00 PDT 2012


On 08/13/2012 06:16 PM, Peter Hutterer wrote:
> Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
> ---
>   include/xorg/gtest/xorg-gtest-process.h | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/include/xorg/gtest/xorg-gtest-process.h b/include/xorg/gtest/xorg-gtest-process.h
> index 69b3b34..8cf60e3 100644
> --- a/include/xorg/gtest/xorg-gtest-process.h
> +++ b/include/xorg/gtest/xorg-gtest-process.h
> @@ -123,7 +123,8 @@ class Process {
>      * See 'man execvp' for further information on the variadic argument list.
>      *
>      * @param program The program to start.
> -   * @param args Variadic list of arguments passed to the program.
> +   * @param args Variadic list of arguments passed to the program. This list
> +   * must end in a zero-length string ("", not NULL).
>      *
>      * @throws std::runtime_error on failure.
>      *
> @@ -135,7 +136,8 @@ class Process {
>     /**
>      * Starts a program as a child process.
>      *
> -   * Takes a variadic list of arguments passed to the program.
> +   * Takes a variadic list of arguments passed to the program. This list
> +   * must end in a zero-length string ("", not NULL).
>      * See 'man execvp' for further information on the variadic argument list.
>      *
>      * @param program The program to start.
>

Hmmm... I wish we had though to use a NULL sentinel for the varargs 
version. We could have used the gcc sentinel function attribute to help 
warn people of bad usage. I suppose it's too late to change now that 
we've released it.

Reviewed-by: Chase Douglas <chase.douglas at canonical.com>

And pushed as commit 4b8f4dd2b2be2bb036f75403ef4cef31d280f70b.

Thanks!


More information about the xorg-devel mailing list