Fix gdbclient to work with emulator builds

gdbclient got broken by:
https://android-review.googlesource.com/156974

To fix, check for special case when device is actually an emulator,
and set the $DEVICE variable accordingly.

Change-Id: I85d0d520ae1e2ea022aa3e2d08a10cd0b1cb491f
This commit is contained in:
Nikola Veljkovic
2015-07-09 11:24:10 +02:00
parent 30b96ba70d
commit 4efdec68b0

View File

@@ -12,6 +12,15 @@ fi
# as well.
source $ANDROID_BUILD_TOP/build/envsetup.sh
function adb_get_product_device() {
local candidate=`adb shell getprop ro.hardware | tr -d '\r\n'`
if [[ "$candidate" =~ ^(goldfish|ranchu)$ ]]; then
# Emulator builds use product.device for OUT folder
candidate=`adb shell getprop ro.product.device | tr -d '\r\n'`
fi
echo $candidate
}
# returns 0 when process is not traced
function adb_get_traced_by() {
echo `adb shell cat /proc/$1/status | grep -e "^TracerPid:" | sed "s/^TracerPid:\t//" | tr -d '\r\n'`
@@ -37,7 +46,7 @@ function gdbclient() {
echo "Usage: gdbclient <pid|processname> [port number]"
return -1
fi
local DEVICE=`adb shell getprop ro.hardware | tr -d '\r\n'`
local DEVICE=$(adb_get_product_device)
if [ -z "$DEVICE" ]; then
echo "Error: Unable to get device name. Please check if device is connected and ANDROID_SERIAL is set."