hgext/fsmonitor/pywatchman/__init__.py
changeset 39826 c31ce080eb75
parent 33769 dd35abc409ee
child 41968 57264906a996
--- a/hgext/fsmonitor/pywatchman/__init__.py	Fri Sep 21 21:14:27 2018 -0400
+++ b/hgext/fsmonitor/pywatchman/__init__.py	Sun Sep 23 00:47:04 2018 -0400
@@ -48,6 +48,14 @@
 except ImportError:
     from . import pybser as bser
 
+from mercurial.utils import (
+    procutil,
+)
+
+from mercurial import (
+    pycompat,
+)
+
 from . import (
     capabilities,
     compat,
@@ -580,7 +588,8 @@
             '--no-pretty',
             '-j',
         ]
-        self.proc = subprocess.Popen(args,
+        self.proc = subprocess.Popen(pycompat.rapply(procutil.tonativestr,
+                                                     args),
                                      stdin=subprocess.PIPE,
                                      stdout=subprocess.PIPE)
         return self.proc
@@ -822,7 +831,8 @@
                 startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
                 args['startupinfo'] = startupinfo
 
-            p = subprocess.Popen(cmd, **args)
+            p = subprocess.Popen(pycompat.rapply(procutil.tonativestr, cmd),
+                                 **args)
 
         except OSError as e:
             raise WatchmanError('"watchman" executable not in PATH (%s)' % e)