Index: gclient_utils.py |
diff --git a/gclient_utils.py b/gclient_utils.py |
index 4c8edb6bfa84f47cd3bd95278461a29fcbcf0023..a74c6b96092842d09bb0f17f9f912fbe27116138 100644 |
--- a/gclient_utils.py |
+++ b/gclient_utils.py |
@@ -73,7 +73,15 @@ def Popen(args, **kwargs): |
# executable, but shell=True makes subprocess on Linux fail when it's called |
# with a list because it only tries to execute the first item in the list. |
kwargs['shell'] = (sys.platform=='win32') |
- return subprocess.Popen(args, **kwargs) |
+ try: |
+ return subprocess.Popen(args, **kwargs) |
+ except OSError, e: |
+ if e.errno == errno.EAGAIN and sys.platform == 'cygwin': |
+ raise Error( |
+ 'Visit ' |
+ 'http://code.google.com/p/chromium/wiki/CygwinDllRemappingFailure to ' |
+ 'learn how to fix this error; you need to rebase your cygwin dlls') |
+ raise |
def CheckCall(command, cwd=None, print_error=True): |