Reland - Support msysgit in gcl and git-cl

An explicit msysgit check is needed since it requires
the usage of 'env' to open the editor.

BUG=70550, 70548
TEST=Win,Linux 
Review URL: http://codereview.chromium.org/6680019

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@77946 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/git_cl/git_cl.py b/git_cl/git_cl.py
index 8677adb..3b7ca33 100644
--- a/git_cl/git_cl.py
+++ b/git_cl/git_cl.py
@@ -710,9 +710,14 @@
   fileobj.write(starting_text)
   fileobj.close()
 
-  result = None
+  # Open up the default editor in the system to get the CL description.
+  cmd = [editor, filename]
+  if sys.platform == 'win32' and 'mingw\\bin' in os.environ['PATH']:
+    # Msysgit requires the usage of 'env' to be present. The only way to
+    # accomplish that is by reading the environment variable for mingw\bin.
+    cmd.insert(0, 'env')
   try:
-    subprocess.check_call(['env', editor, filename], shell=True)
+    subprocess.check_call(cmd)
     fileobj = open(filename)
     result = fileobj.read()
     fileobj.close()