Hello community, here is the log from the commit of package make for openSUSE:Factory checked in at 2020-04-25 20:08:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/make (Old) and /work/SRC/openSUSE:Factory/.make.new.2738 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "make" Sat Apr 25 20:08:09 2020 rev:45 rq:795530 version:4.3 Changes: -------- --- /work/SRC/openSUSE:Factory/make/make.changes 2020-04-08 19:54:11.325014037 +0200 +++ /work/SRC/openSUSE:Factory/.make.new.2738/make.changes 2020-04-25 20:08:16.503541646 +0200 @@ -1,0 +2,5 @@ +Tue Apr 14 13:30:14 UTC 2020 - Martin Liška <[email protected]> + +- Add fix-57962.patch in order to fix bug #57962. + +------------------------------------------------------------------- New: ---- fix-57962.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ make.spec ++++++ --- /var/tmp/diff_new_pack.hQmOwI/_old 2020-04-25 20:08:17.459543617 +0200 +++ /var/tmp/diff_new_pack.hQmOwI/_new 2020-04-25 20:08:17.463543625 +0200 @@ -28,6 +28,7 @@ # keyring downloaded from https://savannah.gnu.org/project/memberlist-gpgkeys.php?group=make&download=1 Source2: %{name}.keyring Patch1: make-testcases_timeout.diff +Patch2: fix-57962.patch Patch5: test-driver.patch Patch64: make-library-search-path.diff BuildRequires: autoconf @@ -45,6 +46,7 @@ %prep %setup -q %patch1 -p1 +%patch2 -p1 %patch5 -p1 if [ %{_lib} = lib64 ]; then %patch64 -p1 ++++++ fix-57962.patch ++++++ diff --git a/lib/findprog-in.c b/lib/findprog-in.c index c254f2f..d89ec00 100644 --- a/lib/findprog-in.c +++ b/lib/findprog-in.c @@ -26,6 +26,7 @@ #include <stdlib.h> #include <string.h> #include <unistd.h> +#include <sys/stat.h> #include "filename.h" #include "concat-filename.h" @@ -190,6 +191,7 @@ find_in_given_path (const char *progname, const char *path, dir = "."; /* Try all platform-dependent suffixes. */ + struct stat st; for (i = 0; i < sizeof (suffixes) / sizeof (suffixes[0]); i++) { const char *suffix = suffixes[i]; @@ -208,7 +210,8 @@ find_in_given_path (const char *progname, const char *path, use it. On other systems, let's hope that this program is not installed setuid or setgid, so that it is ok to call access() despite its design flaw. */ - if (eaccess (progpathname, X_OK) == 0) + if (eaccess (progpathname, X_OK) == 0 && + stat(progpathname, &st) == 0 && S_ISREG(st.st_mode)) { /* Found! */ if (strcmp (progpathname, progname) == 0)
