Merge "Fix bug #37284906, adb shell crashes on windows with invalid options. For example, "adb.exe shell -list" crashes without this fix. Test: adb.exe shell -list-packages"

This commit is contained in:
Huihong Luo 2017-08-18 14:35:52 +00:00 committed by Gerrit Code Review
commit e275043d38

View file

@ -685,6 +685,10 @@ static int adb_shell(int argc, const char** argv) {
// Parse shell-specific command-line options.
argv[0] = "adb shell"; // So getopt(3) error messages start "adb shell".
#ifdef _WIN32
// fixes "adb shell -l" crash on Windows, b/37284906
__argv = const_cast<char**>(argv);
#endif
optind = 1; // argv[0] is always "shell", so set `optind` appropriately.
int opt;
while ((opt = getopt(argc, const_cast<char**>(argv), "+e:ntTx")) != -1) {