Index: build/android/pylib/forwarder.py |
diff --git a/build/android/pylib/forwarder.py b/build/android/pylib/forwarder.py |
index 17a0114ee8acf8cdd88eaf4aebe59c7002249c20..1a0050a5542539376dbfe11c64d58cb296b0ee97 100644 |
--- a/build/android/pylib/forwarder.py |
+++ b/build/android/pylib/forwarder.py |
@@ -9,6 +9,7 @@ import logging |
import os |
import psutil |
+from devil import devil_env |
from devil.utils import cmd_helper |
from pylib import constants |
from pylib import valgrind_tools |
@@ -77,7 +78,7 @@ class Forwarder(object): |
device_serial = str(device) |
redirection_commands = [ |
- ['--adb=' + constants.GetAdbPath(), |
+ ['--adb=' + devil_env.config.FetchPath('adb'), |
'--serial-id=' + device_serial, |
'--map', str(device_port), str(host_port)] |
for device_port, host_port in port_pairs] |
@@ -197,11 +198,8 @@ class Forwarder(object): |
self._initialized_devices = set() |
self._device_to_host_port_map = dict() |
self._host_to_device_port_map = dict() |
- self._host_forwarder_path = os.path.join( |
- constants.GetOutDirectory(), 'host_forwarder') |
+ self._host_forwarder_path = devil_env.config.FetchPath('forwarder_host') |
assert os.path.exists(self._host_forwarder_path), 'Please build forwarder2' |
- self._device_forwarder_path_on_host = os.path.join( |
- constants.GetOutDirectory(), 'forwarder_dist') |
self._InitHostLocked() |
@staticmethod |
@@ -216,7 +214,7 @@ class Forwarder(object): |
if not serial_with_port in instance._device_to_host_port_map: |
logging.error('Trying to unmap non-forwarded port %d', device_port) |
return |
- redirection_command = ['--adb=' + constants.GetAdbPath(), |
+ redirection_command = ['--adb=' + devil_env.config.FetchPath('adb'), |
'--serial-id=' + serial, |
'--unmap', str(device_port)] |
logging.info('Undo forwarding using command: %s', redirection_command) |
@@ -279,9 +277,16 @@ class Forwarder(object): |
if device_serial in self._initialized_devices: |
return |
Forwarder._KillDeviceLocked(device, tool) |
+ forwarder_device_path_on_host = devil_env.config.FetchPath( |
+ 'forwarder_device', device=device) |
+ forwarder_device_path_on_device = ( |
+ Forwarder._DEVICE_FORWARDER_FOLDER |
+ if os.path.isdir(forwarder_device_path_on_host) |
+ else Forwarder._DEVICE_FORWARDER_PATH) |
device.PushChangedFiles([( |
- self._device_forwarder_path_on_host, |
- Forwarder._DEVICE_FORWARDER_FOLDER)]) |
+ forwarder_device_path_on_host, |
+ forwarder_device_path_on_device)]) |
+ |
cmd = '%s %s' % (tool.GetUtilWrapper(), Forwarder._DEVICE_FORWARDER_PATH) |
device.RunShellCommand( |
cmd, env={'LD_LIBRARY_PATH': Forwarder._DEVICE_FORWARDER_FOLDER}, |