misc/android: don't let the Android exec wrapper hang indefinitely
misc/android: don't let the Android exec wrapper hang indefinitely

On Android, the exec wrapper passes on output from adb to its parent
process by passing on os.Stderr and os.Stdout to adb. If the adb
process somehow hangs, it will keep stderr and stdout will open, in turn
blocking go test from ever returning from its cmd.Wait() even though
it has killed the exec wrapper process.

Break the short circuit by introducing a wrapper between adb and the
exec wrapper, preventing os/exec.Run from passing along the raw
file descriptors for os.Stdout and os.Stderr.

(Hopefully) fixes occasional indefinite hangs on the Android builder.

Change-Id: I1188211fbde79b4a66bf93ff8e9d0091abf34560
Reviewed-on: https://go-review.googlesource.com/42271
Run-TryBot: Elias Naur <993af7099cb24ce1a88d64108ae1e8b0385f2fc0@gmail.com>
TryBot-Result: Gobot Gobot <66cb808b70d30c07676d5e946fee83fd561249e5@golang.org>
Reviewed-by: Brad Fitzpatrick <ae9783c0b0efc69cd85ab025ddd17aa44cdc4aa5@golang.org>

Cofyc/go,codestation/go,Cofyc/go,ImJasonH/go,cloudflare/go,cloudflare/go,derekmarcotte/go,vsekhar/elastic-go,codestation/go,vsekhar/elastic-go,codestation/go,derekmarcotte/go,nawawi/go,christopher-henderson/Go,codestation/go,polyverse-security/go,nawawi/go,Cofyc/go,akutz/go,polyverse-security/go,nawawi/go,akutz/go,golang/go,golang/go,CAFxX/go,akutz/go,polyverse-security/go,vsekhar/elastic-go,josharian/go,polyverse-security/go,codestation/go,nawawi/go,derekmarcotte/go,Cofyc/go,CAFxX/go,golang/go,codestation/go,cloudflare/go,CAFxX/go,vsekhar/elastic-go,golang/go,CAFxX/go,akutz/go,nawawi/go,golang/go,Cofyc/go,ImJasonH/go,akutz/go,josharian/go,cloudflare/go,akutz/go,derekmarcotte/go,vsekhar/elastic-go,ImJasonH/go,derekmarcotte/go,codestation/go,CAFxX/go,josharian/go,akutz/go,ImJasonH/go,cloudflare/go,nawawi/go,nawawi/go,polyverse-security/go,golang/go,ImJasonH/go,derekmarcotte/go,josharian/go,polyverse-security/go,ImJasonH/go,codestation/go,cloudflare/go,cloudflare/go,josharian/go,CAFxX/go,ImJasonH/go,golang/go,Cofyc/go,vsekhar/elastic-go,CAFxX/go,vsekhar/elastic-go,derekmarcotte/go,CAFxX/go,nawawi/go,Cofyc/go,Cofyc/go,vsekhar/elastic-go,josharian/go,polyverse-security/go,golang/go,derekmarcotte/go,josharian/go,josharian/go,polyverse-security/go,cloudflare/go,akutz/go,ImJasonH/go