aboutsummaryrefslogtreecommitdiffstats
path: root/java/debug.sh
diff options
context:
space:
mode:
Diffstat (limited to 'java/debug.sh')
-rwxr-xr-xjava/debug.sh13
1 files changed, 8 insertions, 5 deletions
diff --git a/java/debug.sh b/java/debug.sh
index 7008664c049..2e95f9738c7 100755
--- a/java/debug.sh
+++ b/java/debug.sh
@@ -267,10 +267,14 @@ if [ -z "$gdbserver" ]; then
267 gdbserver_bin=/system/bin/gdbserver 267 gdbserver_bin=/system/bin/gdbserver
268else 268else
269 gdbserver_bin=/data/local/tmp/gdbserver 269 gdbserver_bin=/data/local/tmp/gdbserver
270 gdbserver_cat="cat $gdbserver_bin | run-as $package sh -c \
271 \"tee gdbserver > /dev/null\""
270 272
271 # Upload the specified gdbserver binary to the device. 273 # Upload the specified gdbserver binary to the device.
272 adb -s $device push "$gdbserver" "$gdbserver_bin" 274 adb -s $device push "$gdbserver" "$gdbserver_bin"
273 adb -s $device shell chmod +x "$gdbserver_bin" 275 # Copy it to the user directory.
276 adb -s $device shell "$gdbserver_cat"
277 adb -s $device shell "run-as $package chmod +x gdbserver"
274fi 278fi
275 279
276# Now start gdbserver on the device asynchronously. 280# Now start gdbserver on the device asynchronously.
@@ -286,10 +290,9 @@ if [ -z "$gdbserver" ]; then
286else 290else
287 # Normally the program cannot access $gdbserver_bin when it is 291 # Normally the program cannot access $gdbserver_bin when it is
288 # placed in /data/local/tmp. 292 # placed in /data/local/tmp.
289 adb -s $device shell $gdbserver_bin --once \ 293 adb -s $device shell run-as $package "./gdbserver" --once \
290 "+/data/local/tmp/debug.$package.socket" \ 294 "0.0.0.0:7654" --attach $pid >&5 &
291 --attach $pid >&5 & 295 gdb_socket="tcp:7654"
292 gdb_socket="localfilesystem:/data/local/tmp/debug.$package.socket"
293fi 296fi
294 297
295# Wait until gdbserver successfully runs. 298# Wait until gdbserver successfully runs.