From: Vladimir Mezentsev Date: Wed, 16 Aug 2023 02:45:12 +0000 (-0700) Subject: gprofng: Use execvp instead of execv X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1f572864da9682a7d423477b1795b7dacc1f11da;p=binutils-gdb.git gprofng: Use execvp instead of execv gp-display-gui (https://savannah.gnu.org/projects/gprofng-gui) can be installed in a different directory. In this case, $PATH is used to look up gp-display-text. execv() does not use $PATH to find the executable. gprofng/ChangeLog 2023-08-15 Vladimir Mezentsev * src/gp-display-text.cc (reexec): Use execvp instead of execv. --- diff --git a/gprofng/src/gp-display-text.cc b/gprofng/src/gp-display-text.cc index 0d0a5e75e44..85ae274fc63 100644 --- a/gprofng/src/gp-display-text.cc +++ b/gprofng/src/gp-display-text.cc @@ -20,6 +20,7 @@ #include "config.h" #include // isatty +#include #include "gp-print.h" #include "ipcio.h" @@ -55,7 +56,11 @@ reexec () { if (dbeSession != NULL) dbeSession->unlink_tmp_files (); - execv (exe_name, new_argv); + execvp (exe_name, new_argv); + fprintf (stderr, GTXT ("Error: reexec() failed (%d: %s)\n"), errno, + STR(strerror (errno))); + fflush (stderr); + exit (1); } /**