summaryrefslogtreecommitdiffstats
path: root/winsup/utils/cygcheck.cc
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/utils/cygcheck.cc')
-rw-r--r--winsup/utils/cygcheck.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/winsup/utils/cygcheck.cc b/winsup/utils/cygcheck.cc
index ba1ee6f37..6db0d04e0 100644
--- a/winsup/utils/cygcheck.cc
+++ b/winsup/utils/cygcheck.cc
@@ -218,7 +218,14 @@ find_on_path (char *file, char *default_extension,
}
if (strchr (file, ':') || strchr (file, '\\') || strchr (file, '/'))
- return cygpath (file, NULL);
+ {
+ char *fn = cygpath (file, NULL);
+ if (access (fn, F_OK) == 0)
+ return fn;
+ strcpy (rv, fn);
+ strcat (rv, default_extension);
+ return access (rv, F_OK) == 0 ? rv : fn;
+ }
if (strchr (file, '.'))
default_extension = (char *) "";