[Mesa-dev] [PATCH] auxilary/os: allow appending to GALLIUM_LOG_FILE

Jose Fonseca jfonseca at vmware.com
Wed Jun 15 19:21:51 UTC 2016


On 15/06/16 18:57, Brian Paul wrote:
> If the log file specified by the GALLIUM_LOG_FILE begins with '+', open
> the file in append mode.  This is useful to log all gallium output for
> an entire piglit run, for example.
>
> v2: put GALLIUM_LOG_FILE support inside an #ifdef DEBUG block.
> ---
>   src/gallium/auxiliary/os/os_misc.c | 15 +++++++++++++--
>   1 file changed, 13 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/auxiliary/os/os_misc.c b/src/gallium/auxiliary/os/os_misc.c
> index d6b83e9..82e4957 100644
> --- a/src/gallium/auxiliary/os/os_misc.c
> +++ b/src/gallium/auxiliary/os/os_misc.c
> @@ -69,10 +69,21 @@ os_log_message(const char *message)
>      static FILE *fout = NULL;
>
>      if (!fout) {
> +#ifdef DEBUG
>         /* one-time init */
>         const char *filename = os_get_option("GALLIUM_LOG_FILE");
> -      if (filename)
> -         fout = fopen(filename, "w");
> +      if (filename) {
> +         const char *mode = "w";
> +         if (filename[0] == '+') {
> +            /* If the filename is prefixed with '+' then open the file for
> +             * appending instead of normal writing.
> +             */
> +            mode = "a";
> +            filename++; /* skip the '+' */
> +         }
> +         fout = fopen(filename, mode);
> +      }
> +#endif
>         if (!fout)
>            fout = stderr;
>      }
>

Reviewed-by: Jose Fonseca <jfonseca at vmware.com>


More information about the mesa-dev mailing list