| #!/bin/bash |
| # |
| # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # If no flags are given, prints the current content shell flags. |
| # |
| # Otherwise, the given flags are used to REPLACE (not modify) the content shell |
| # flags. For example: |
| # adb_content_shell_command_line --enable-webgl |
| # |
| # To remove all content shell flags, pass an empty string for the flags: |
| # adb_content_shell_command_line "" |
| |
| CMD_LINE_FILE=/data/local/tmp/content-shell-command-line |
| |
| if [ $# -eq 0 ] ; then |
| # If nothing specified, print the command line (stripping off "content_shell") |
| tempfile=$(tempfile) |
| adb pull $CMD_LINE_FILE $tempfile 2>/dev/null |
| if [ $? -eq 0 ] ; then |
| rm $tempfile |
| adb shell cat $CMD_LINE_FILE | cut -d " " -f "2-" 2>/dev/null |
| fi |
| elif [ $# -eq 1 ] && [ "$1" = '' ] ; then |
| # If given an empty string, delete the command line. |
| set -x |
| adb shell rm $CMD_LINE_FILE >/dev/null |
| else |
| # Else set it. |
| set -x |
| adb shell "echo 'content_shell $*' > $CMD_LINE_FILE" |
| # Prevent other apps from modifying flags -- this can create security issues. |
| adb shell chmod 0664 $CMD_LINE_FILE |
| fi |
| |