From 870da718e38555352343a46ce02fb46d5eb3a365 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Thu, 9 Mar 2017 18:20:38 +0300 Subject: Fix path_match() character case sensitivity on Windows --- butl/filesystem.cxx | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'butl') diff --git a/butl/filesystem.cxx b/butl/filesystem.cxx index e792bef..5135281 100644 --- a/butl/filesystem.cxx +++ b/butl/filesystem.cxx @@ -21,6 +21,8 @@ # define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) # define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) # endif + +# include // lcase() #endif #include // errno, E* @@ -797,7 +799,11 @@ namespace butl char pc; for (; rpi != rpe && (pc = *rpi) != '*' && rni != rne; ++rpi, ++rni) { +#ifndef _WIN32 if (*rni != pc && pc != '?') +#else + if (lcase (*rni) != lcase (pc) && pc != '?') +#endif return false; } @@ -832,7 +838,11 @@ namespace butl // for (; (pc = *pi) != '*' && ni != ne; ++pi, ++ni) { +#ifndef _WIN32 if (*ni != pc && pc != '?') +#else + if (lcase (*ni) != lcase (pc) && pc != '?') +#endif return false; } -- cgit v1.1