[Mesa-dev] [PATCH 2/4] gallium/os: use util_get_process_name when possible
Eric Engestrom
eric.engestrom at intel.com
Wed Jul 4 09:37:34 UTC 2018
On Tuesday, 2018-07-03 19:16:10 -0400, Marek Olšák wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
Reviewed-by: Eric Engestrom <eric.engestrom at intel.com>
> ---
> src/gallium/auxiliary/os/os_process.c | 16 ++--------------
> src/util/process.c | 2 ++
> 2 files changed, 4 insertions(+), 14 deletions(-)
>
> diff --git a/src/gallium/auxiliary/os/os_process.c b/src/gallium/auxiliary/os/os_process.c
> index 035bd228e76..87072f0b046 100644
> --- a/src/gallium/auxiliary/os/os_process.c
> +++ b/src/gallium/auxiliary/os/os_process.c
> @@ -22,32 +22,27 @@
> * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
> * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
> * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> *
> **************************************************************************/
>
>
> #include "pipe/p_config.h"
> #include "os/os_process.h"
> #include "util/u_memory.h"
> +#include "util/process.h"
>
> #if defined(PIPE_SUBSYSTEM_WINDOWS_USER)
> # include <windows.h>
> -#elif defined(__GLIBC__) || defined(__CYGWIN__)
> -# include <errno.h>
> -#elif defined(PIPE_OS_BSD) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_ANDROID)
> -# include <stdlib.h>
> #elif defined(PIPE_OS_HAIKU)
> # include <kernel/OS.h>
> # include <kernel/image.h>
> -#else
> -#warning unexpected platform in os_process.c
> #endif
>
> #if defined(PIPE_OS_LINUX)
> # include <fcntl.h>
> #endif
>
>
> /**
> * Return the name of the current process.
> * \param procname returns the process name
> @@ -77,34 +72,27 @@ os_get_process_name(char *procname, size_t size)
> lpProcessName = strrchr(szProcessPath, '\\');
> lpProcessName = lpProcessName ? lpProcessName + 1 : szProcessPath;
>
> lpProcessExt = strrchr(lpProcessName, '.');
> if (lpProcessExt) {
> *lpProcessExt = '\0';
> }
>
> name = lpProcessName;
>
> -#elif defined(__GLIBC__) || defined(__CYGWIN__)
> - name = program_invocation_short_name;
> -#elif defined(PIPE_OS_BSD) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_ANDROID)
> - /* *BSD and OS X */
> - name = getprogname();
> #elif defined(PIPE_OS_HAIKU)
> image_info info;
> get_image_info(B_CURRENT_TEAM, &info);
> name = info.name;
> #else
> -#warning unexpected platform in os_process.c
> - return FALSE;
> + name = util_get_process_name();
> #endif
> -
> }
>
> assert(size > 0);
> assert(procname);
>
> if (name && procname && size > 0) {
> strncpy(procname, name, size);
> procname[size - 1] = '\0';
> return TRUE;
> }
> diff --git a/src/util/process.c b/src/util/process.c
> index 992ba7f734a..449c7fa77c2 100644
> --- a/src/util/process.c
> +++ b/src/util/process.c
> @@ -53,20 +53,22 @@ __getProgramName()
> # include <osreldate.h>
> # if (__FreeBSD_version >= 440000)
> # define GET_PROGRAM_NAME() getprogname()
> # endif
> #elif defined(__NetBSD__) && defined(__NetBSD_Version__) && (__NetBSD_Version__ >= 106000100)
> # define GET_PROGRAM_NAME() getprogname()
> #elif defined(__DragonFly__)
> # define GET_PROGRAM_NAME() getprogname()
> #elif defined(__APPLE__)
> # define GET_PROGRAM_NAME() getprogname()
> +#elif defined(ANDROID)
> +# define GET_PROGRAM_NAME() getprogname()
> #elif defined(__sun)
> /* Solaris has getexecname() which returns the full path - return just
> the basename to match BSD getprogname() */
> # include <libgen.h>
>
> static const char *
> __getProgramName()
> {
> static const char *progname;
>
> --
> 2.17.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list