Defaults stdin to VOID for capture and check_output()

Since no output is user visible anyway, causing a hang with no clue about what
to type in.

[email protected]
BUG=
TEST=

Review URL: http://codereview.chromium.org/6823091

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@81302 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/subprocess2.py b/subprocess2.py
index b22d3e1..3cc79ae 100644
--- a/subprocess2.py
+++ b/subprocess2.py
@@ -259,7 +259,10 @@
 
   - Discards returncode.
   - Discards stderr. By default sets stderr=STDOUT.
+  - Blocks stdin by default since no output will be visible.
   """
+  if kwargs.get('stdin') is None:
+    kwargs['stdin'] = VOID
   if kwargs.get('stdout') is None:
     kwargs['stdout'] = PIPE
   if kwargs.get('stderr') is None:
@@ -275,7 +278,10 @@
   - Discards stderr. By default sets stderr=STDOUT.
   - Throws if return code is not 0.
   - Works even prior to python 2.7.
+  - Blocks stdin by default since no output will be visible.
   """
+  if kwargs.get('stdin') is None:
+    kwargs['stdin'] = VOID
   if kwargs.get('stdout') is None:
     kwargs['stdout'] = PIPE
   if kwargs.get('stderr') is None:
diff --git a/tests/subprocess2_test.py b/tests/subprocess2_test.py
index 448a82d..552a93c 100755
--- a/tests/subprocess2_test.py
+++ b/tests/subprocess2_test.py
@@ -125,6 +125,7 @@
     expected = {
         'args': ['foo'],
         'a':True,
+        'stdin': subprocess2.VOID,
         'stdout': subprocess2.PIPE,
         'stderr': subprocess2.STDOUT,
     }