MSYS2-packages/which/msys2-allow-windows-mixed-absolute-paths.patch
2015-07-17 12:19:42 +01:00

34 lines
999 B
Diff

diff -urN which-2.21.orig/which.c which-2.21/which.c
--- which-2.21.orig/which.c 2015-07-17 11:17:53.621936700 +0100
+++ which-2.21/which.c 2015-07-17 12:13:21.629563300 +0100
@@ -91,7 +91,14 @@
if (abs_path)
free(abs_path);
+#if defined(__MSYS__)
+ if (*name != '.' && *name != '/' && *name != '~'
+ && !((strlen (name) > 2
+ && tolower (name[0]) >= 'a' && tolower (name[0]) <= 'z'
+ && name[1] == ':' && name[2] == '/')))
+#else
if (*name != '.' && *name != '/' && *name != '~')
+#endif
{
abs_path = (char *)xmalloc(3 + name_len);
strcpy(abs_path, "./");
@@ -201,7 +208,14 @@
int saw_slash = 0, saw_slash_dot = 0, saw_slash_dot_dot = 0;
+#if defined(__MSYS__)
+ if (*p1 != '/'
+ && !((strlen (p1) > 2
+ && tolower (p1[0]) >= 'a' && tolower (p1[0]) <= 'z'
+ && p1[1] == ':' && p1[2] == '/')))
+#else
if (*p1 != '/')
+#endif
{
get_current_working_directory();
strcpy(result, cwd);