[PATCH v2 vkd3d 5/6] vkd3d: Try to guess application name.

Henri Verbeet hverbeet at gmail.com
Fri May 10 10:50:24 CDT 2019


On Fri, 10 May 2019 at 16:46, Józef Kucia <joseph.kucia at gmail.com> wrote:
> +const char *vkd3d_get_program_name(void)
> +{
> +#ifdef _GNU_SOURCE
> +    char *name;
> +
> +    if ((name = strrchr(program_invocation_name, '/')))
> +    {
> +        const char *path = realpath("/proc/self/exe", NULL);
> +
> +        /* Try to strip command line arguments. */
> +        if (path && !strncmp(path, program_invocation_name, strlen(path)))
> +        {
> +            const char *p = strrchr(path, '/');
> +
> +            if (p)
> +                return p + 1;
> +        }
> +
> +        return name + 1;
> +    }
> +
> +    if ((name = strrchr(program_invocation_name, '\\')))
> +        return name + 1;
> +
> +    return program_invocation_name;
> +
> +#else
> +    return NULL;
> +#endif
> +}
realpath() allocates memory.



More information about the wine-devel mailing list