userdiff: add a builtin pattern for dts files
[gitweb.git] / t / t7519 / fsmonitor-watchman
index 51330f8b3d73d513856747264342cefac32ba802..5514edcf68be8020ca94e8c51b9c9f2b3102bd09 100755 (executable)
@@ -29,19 +29,13 @@ if ($version == 1) {
            "Falling back to scanning...\n";
 }
 
-# Convert unix style paths to escaped Windows style paths when running
-# in Windows command prompt
-
-my $system = `uname -s`;
-$system =~ s/[\r\n]+//g;
 my $git_work_tree;
-
-if ($system =~ m/^MSYS_NT/ || $system =~ m/^MINGW/) {
-       $git_work_tree = `cygpath -aw "\$PWD"`;
-       $git_work_tree =~ s/[\r\n]+//g;
-       $git_work_tree =~ s,\\,/,g;
+if ($^O =~ 'msys' || $^O =~ 'cygwin') {
+       $git_work_tree = Win32::GetCwd();
+       $git_work_tree =~ tr/\\/\//;
 } else {
-       $git_work_tree = $ENV{'PWD'};
+       require Cwd;
+       $git_work_tree = Cwd::cwd();
 }
 
 my $retry = 1;
@@ -129,6 +123,7 @@ sub launch_watchman {
            "Falling back to scanning...\n" if $o->{error};
 
        open ($fh, ">", ".git/watchman-output.out");
+       binmode $fh, ":utf8";
        print $fh @{$o->{files}};
        close $fh;