| #!/bin/bash | 
 |  | 
 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 
 | # | 
 | # Use of this source code is governed by a BSD-style license | 
 | # that can be found in the LICENSE file in the root of the source | 
 | # tree. An additional intellectual property rights grant can be found | 
 | # in the file PATENTS.  All contributing project authors may | 
 | # be found in the AUTHORS file in the root of the source tree. | 
 |  | 
 | # 'adb shell' always returns "0" regardless of executable return code. | 
 | # This handy script will return executable return code to shell which | 
 | # can be used by buildbots. | 
 |  | 
 | adb_shell () { | 
 |   local RET ADB_LOG | 
 |   ADB_LOG=$(mktemp "${TMPDIR:-/tmp}/adb-XXXXXXXX") | 
 |   adb "$1" "$2" shell "$3" "$4" ";" echo \$? | tee "$ADB_LOG" | 
 |   sed -i -e 's![[:cntrl:]]!!g' "$ADB_LOG"  # Remove \r. | 
 |   RET=$(sed -e '$!d' "$ADB_LOG")           # Last line contains status code. | 
 |   rm -f "$ADB_LOG" | 
 |   return $RET | 
 | } |