History log of /system/core/adb/bugreport.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ec92e5f194fcad0e847df30497e8b70146c6e5ce 16-Aug-2017 Felipe Leme <felipeal@google.com> Don't preserve file attributes when pulling bugreport file...

...otherwise it could have weird dates when the device clock is wrong.

Bug: 67320882
Test: m -j32 adb && ./out/host/linux-x86/bin/adb bugreport test.zip && ls -l test.zip
Test: m -j32 adb_test && ./out/host/linux-x86/nativetest64/adb_test/adb_test

Fixes: 63927360

Change-Id: I3f87277f1acb97212a87b89639e42b6d7d300faa
(cherry picked from commit 4bfddbd20e3bf11ffc31c8c4177a13ed14ab1a11)
/system/core/adb/bugreport.cpp
1bd8498fc89d14b98e64142e07ad0c35c3bbffed 17-Aug-2017 Josh Gao <jmgao@google.com> adb: allow selection of a specific transport.

Extend device selection to allow selecting a specific transport via
monotonically increasing identifier (visible in devices -l).

This is useful when using multiple devices (like hikey960...) that
have identical bogus serial numbers like 0123456789ABCDEF.

Bug: http://b/37043226
Bug: 65419665
Test: adb -t {1, 2, 9999999} {get-serialno, shell, features}
Change-Id: I55e5dc5a406a4eeee0012e39b52e8cd232e608a6
(cherry picked from commit b122b175555d80b1d13dc1d864126f531e224d84)
/system/core/adb/bugreport.cpp
e5d665b46f5bbc841ab3eeb2070f390932f1a239 24-May-2017 Felipe Leme <felipeal@google.com> Always print the initial bugreport progress message.

Otherwise, it might take seconds to display the initial percentage,
and the user might thing something is wrong and CTRL-C the process.

Fixes: 62003852
Test: added BugreportTest.OkProgressZeroPercentIsNotIgnored
Test: m -j32 adb_test && ./out/host/linux-x86/nativetest64/adb_test/adb_test --gtest_filter=BugreportTest.*

Change-Id: I8e7dbb28666c825c1408d5d204f813064fc3048f
/system/core/adb/bugreport.cpp
499af386236a978319d6e2784ba9ef8c14ed8c6e 03-May-2017 Treehugger Robot <treehugger-gerrit@google.com> Merge "Don't display bugreport progress when it recedes, for real..."
4cc03611cdd8f381d199e63f353075d6c7a3c44d 02-May-2017 Felipe Leme <felipeal@google.com> Don't display bugreport progress when it recedes, for real...

The previous fix was taking account just the progress reported by dumpstate,
not progress/percentage. As such, it was not detecting the cases where the
percentage decreased but the progress didn't.

Bug: 37878670
Test: m -j32 adb_test && ./out/host/linux-x86/nativetest64/adb_test/adb_test --gtest_filter=BugreportTest.*

Change-Id: I5830028f3191a9b17f63aeed5c049b29fa7d1179
/system/core/adb/bugreport.cpp
1fc8f6e0cfdfd5c9dbbd82116fba2ebec82b4659 18-Apr-2017 Elliott Hughes <enh@google.com> Fix various adb error reporting bugs.

`adb install` was writing success to stderr rather than stdout.

Server mismatch messages were going to stdout rather than stderr.

Error messages should consistently start with a lower case letter.

Also improve consistency of syntax error reporting.

Bug: https://issuetracker.google.com/37128706 (adb install success to stdout)
Bug: https://issuetracker.google.com/37140458 (server mismatch on stderr)
Bug: http://b/32413861 (consistency)
Test: ran tests
Change-Id: I0d6cb0c7482bec03483dacefd996644b7a28d273
/system/core/adb/bugreport.cpp
dedcbaad51106a62a72721a68a27c132d3c04a82 20-Mar-2017 Felipe Leme <felipeal@google.com> Don't display bugreport progress when it recedes.

Also fixed InvalidNumberArgs that broke when usage() was moved out from
bugreport.cpp.

Fixes: 26354314
Bug: 28054087
Test: m -j32 adb_test && ./out/host/linux-x86/nativetest64/adb_test/adb_test --gtest_filter=BugreportTest.*

Change-Id: I7be5ef7de0fb0d339dc80a2abc816e1c905deb22
/system/core/adb/bugreport.cpp
58021d15c94eb6a81d2673634956b5374af6a1e5 24-Feb-2017 Colin Cross <ccross@android.com> Move adb_dirname and adb_basename to libbase

adb already provides an implementation of dirname and basename that
take and produce std::strings, move it into libbase so it can be
used in the implementation of GetExecutableDirectory.

Test: out/host/linux-x86/nativetest64/adb_test/adb_test
Test: out/host/linux-x86/nativetest64/libbase_test/libbase_test
Test: adb shell /data/nativetest64/libbase_test/libbase_test64
Change-Id: Ideb1627607b14562121316d4ed27fa6fb0930684
/system/core/adb/bugreport.cpp
2ec36b0da00f959ed5cf47b947630fe6bfe73c9f 07-Feb-2017 Elliott Hughes <enh@google.com> Don't print 168^W143 lines of help when someone makes a typo.

Print actual usage messages in most cases.

Add --help and --version.

Bug: http://b/28054087
Test: manual
Change-Id: I39c1cb7a84f52e0c35d24f140ec55c3a181283fb
/system/core/adb/bugreport.cpp
02ee1725ae93aa5821c78fdfbbd1ee9e95ef67dd 26-Oct-2016 Elliott Hughes <enh@google.com> Merge "Make "adb bugreport"'s .zip check case-insensitive."
am: da6fe65000

Change-Id: I34d95b38bec230729b3707c698b347c9a5908831
7acce1b0ab0077601309cc8c7001a6fdcf7dafa7 26-Oct-2016 Elliott Hughes <enh@google.com> Make "adb bugreport"'s .zip check case-insensitive.

Bug: TODO
Test: manual
Change-Id: I0ece7d8dcb708e3755477f7df5ff03807fd227f2
/system/core/adb/bugreport.cpp
da46b392f10d2809b5696632f67485f272ec5698 12-Oct-2016 Elliott Hughes <enh@google.com> Move off std::sto* function which abort on failure.

Bug: http://b/31403370
Test: builds, boots, libbase tests pass
Change-Id: I89cd7ca3d8f1c8a1bad0ddf3043439449d19a293
/system/core/adb/bugreport.cpp
680f4a488837bbadb8f341e67baac57b7cf5a29a 16-Aug-2016 Felipe Leme <felipeal@google.com> DO NOT MERGE: Split 'generating' and 'pulling' in 2 messages.

BUG: 30799929
Change-Id: I0af0ad2478c57ffc5b2c953118e01677f788d14a
(cherry picked from commit 9c0be90528baee54182334048af467e3dde74d72)
(cherry picked from commit 321c21e2df13cb375a9c96dbdbb7c849734a9293)
/system/core/adb/bugreport.cpp
f33fcb6418ec16fa91b17966106d135e0541f34a 04-Aug-2016 Felipe Leme <felipeal@google.com> DO NOT MERGE: Ignore bugreportz output when it's not supported.

On devices running M or below, calling 'bugreportz -v' writes
'/system/bin/sh: bugreportz: not found' in the stdout output, which must
be redirected to stderr so it's not shown in the flat-file bugreport,
above the bugreport header.

BUG: 30451114

Change-Id: I942c92fdf6ae85e0cde7b9f94b9eb0b1fecad77a
(cherry picked from commit 9a882a3ef38c487eaa26dee845bb738997d5023d)
(cherry picked from commit b0022b036e10bbad8536286a32228a8f90c80068)
/system/core/adb/bugreport.cpp
b3239728bbb1ffd77e3ac3dda5089d96e0580ee3 30-Jul-2016 Felipe Leme <felipeal@google.com> DO NOT MERGE: Deprecated 'adb bugreport' with flat files.

Starting on Android N, zipped bugreports contain more information than
flat-file, text bugreports. On N, calls to 'adb bugreport' would still
generate a flat-file bugreport, but with a warning.

With this change, 'adb bugreport' will generate a zipped bugreport in
the current directory, using the bugreport name provided by the
device. Similarly, calling 'adb bugreport dir' will generate a bugreport
with a device-provided name, but in such directory.

BUG: 30451114
BUG: 29448020

Change-Id: Ibc8920dd44a5f62feb15bf3fefdcb0bdbf389a90
(cherry picked from commit 307951e124afc0ab385dc679a57562d339049e2b)
(cherry picked from commit f8d9e4eb0062c0122fc87ced5c6c6b6a6e3f4521)
/system/core/adb/bugreport.cpp
6e2869680c2d841da85531d6ecf23adfb55b4e71 30-Jul-2016 Felipe Leme <felipeal@google.com> DO NOT MERGE: Minor improvements on bugreport generation.

- Skipped artificial 100/100 message, since pulling will take care of
the final 100% progress.
- Consolidated unsupported lines in just one message.
- Let user know the bugreport can still be recovered when it could not
be copied to the destination directory.

BUG: 30451114

Change-Id: Icfce9c1e8e7ed407719728b9874679ac40b21eab
(cherry picked from commit 80a65d03c997637c9fc8a41d878aa3f25ef9e668)
(cherry picked from commit 5f6eacaeda3aad9b60a6cf4a139bd1e544c7aecb)
/system/core/adb/bugreport.cpp
daf4628f365cb0ab2e9734ef9152b109a241bd63 28-Jul-2016 Felipe Leme <felipeal@google.com> DO NOT MERGE: Removed extra 'pulling file' message.

Taking a zip bugreport has 2 phases: generating the bugreport and
pulling the file.

Initially adb was printing 2 messages, but since the latter is almost
instantaneously, it could be confusing to have 2 lines...

Fixes: 30451250
Change-Id: I1c6cc6163492c1fb6064667dfdb7aaf6ed4c4c6f
(cherry picked from commit f7c38b4c03d75c9cb27610acab96f4e7f4169de8)
(cherry picked from commit 33ae849fefa1605a472ac82c2c4ee8eb0af23463)
/system/core/adb/bugreport.cpp
6f5080faa5c95ba7fc9d4c73eaecf4684a79d00c 26-Jul-2016 Felipe Leme <felipeal@google.com> DO NOT MERGE: Show bugreport progress.

adb calls bugreportz to generate a bugreport; initially, bugreportz
would only report the final status of the operation (OK or FAIL), but
now it sends intermediate PROGRESS lines reporting its progress (in the
form of current/max).

Similarly, the initial implementation of 'adb bugreport <zip_file>'
would print an initial 'please wait' message and wait for the full
stdout before parsing the result, but now it uses a new callback class
to handle the stdout as it is generated by bugreportz.

BUG: 28609499

Change-Id: I6644fc39a686279e1635f946a47f3847b547d1c1
(cherry picked from commit cd42d658b2d08ace81b5ae3b108acbaca1a1d439)
(cherry picked from commit 97b73a0daf74081a6324bb41cc34d9f0598cfe29)
/system/core/adb/bugreport.cpp
0d4f0508c0c20847c8f44353ce00d36fcc3d0788 26-Jul-2016 Felipe Leme <felipeal@google.com> DO NOT MERGE: Refactored functions that copy sdout and stderr to strings to use a callback.

BUG: 28609499

Change-Id: I04aea346e18678ea00797f7f659480edba4436c2
(cherry picked from commit 07ac8554b477dc81579a5e63a2fbabc740fa8a92)
(cherry picked from commit d18854218ec1e9fa2659f6c8be1ca17adefe68fb)
/system/core/adb/bugreport.cpp
698e065e14840541f218a80241fa880703a7dbc5 20-Jul-2016 Felipe Leme <felipeal@google.com> DO NOT MERGE: Split bugreport() into its own file and added unit tests.

bugreport() will be soon refactored to track progress, which will
require more comprehensive unit tests.

As such, it's better to move it to its own files, which in turn also
requires moving send_shell_command() and usage() to commandline.h.

Fixes: 30100363
Bug: 30268737

Change-Id: I3cdf114a0b5547293320042ff0749a60886440b0
(cherry picked from commit 78e0963e4bce9cc9f0bbf0b686004ba15b1e3929)
(cherry picked from commit 218e1ff75998052c7bb30b483c15e75a853283a8)
/system/core/adb/bugreport.cpp
321c21e2df13cb375a9c96dbdbb7c849734a9293 16-Aug-2016 Felipe Leme <felipeal@google.com> Split 'generating' and 'pulling' in 2 messages.

BUG: 30799929
Change-Id: I0af0ad2478c57ffc5b2c953118e01677f788d14a
(cherry picked from commit 9c0be90528baee54182334048af467e3dde74d72)
/system/core/adb/bugreport.cpp
b0022b036e10bbad8536286a32228a8f90c80068 04-Aug-2016 Felipe Leme <felipeal@google.com> Ignore bugreportz output when it's not supported.

On devices running M or below, calling 'bugreportz -v' writes
'/system/bin/sh: bugreportz: not found' in the stdout output, which must
be redirected to stderr so it's not shown in the flat-file bugreport,
above the bugreport header.

BUG: 30451114

Change-Id: I942c92fdf6ae85e0cde7b9f94b9eb0b1fecad77a
(cherry picked from commit 9a882a3ef38c487eaa26dee845bb738997d5023d)
/system/core/adb/bugreport.cpp
f8d9e4eb0062c0122fc87ced5c6c6b6a6e3f4521 30-Jul-2016 Felipe Leme <felipeal@google.com> Deprecated 'adb bugreport' with flat files.

Starting on Android N, zipped bugreports contain more information than
flat-file, text bugreports. On N, calls to 'adb bugreport' would still
generate a flat-file bugreport, but with a warning.

With this change, 'adb bugreport' will generate a zipped bugreport in
the current directory, using the bugreport name provided by the
device. Similarly, calling 'adb bugreport dir' will generate a bugreport
with a device-provided name, but in such directory.

BUG: 30451114
BUG: 29448020

Change-Id: Ibc8920dd44a5f62feb15bf3fefdcb0bdbf389a90
(cherry picked from commit 307951e124afc0ab385dc679a57562d339049e2b)
/system/core/adb/bugreport.cpp
5f6eacaeda3aad9b60a6cf4a139bd1e544c7aecb 30-Jul-2016 Felipe Leme <felipeal@google.com> Minor improvements on bugreport generation.

- Skipped artificial 100/100 message, since pulling will take care of
the final 100% progress.
- Consolidated unsupported lines in just one message.
- Let user know the bugreport can still be recovered when it could not
be copied to the destination directory.

BUG: 30451114

Change-Id: Icfce9c1e8e7ed407719728b9874679ac40b21eab
(cherry picked from commit 80a65d03c997637c9fc8a41d878aa3f25ef9e668)
/system/core/adb/bugreport.cpp
33ae849fefa1605a472ac82c2c4ee8eb0af23463 28-Jul-2016 Felipe Leme <felipeal@google.com> Removed extra 'pulling file' message.

Taking a zip bugreport has 2 phases: generating the bugreport and
pulling the file.

Initially adb was printing 2 messages, but since the latter is almost
instantaneously, it could be confusing to have 2 lines...

Fixes: 30451250
Change-Id: I1c6cc6163492c1fb6064667dfdb7aaf6ed4c4c6f
(cherry picked from commit f7c38b4c03d75c9cb27610acab96f4e7f4169de8)
/system/core/adb/bugreport.cpp
97b73a0daf74081a6324bb41cc34d9f0598cfe29 26-Jul-2016 Felipe Leme <felipeal@google.com> Show bugreport progress.

adb calls bugreportz to generate a bugreport; initially, bugreportz
would only report the final status of the operation (OK or FAIL), but
now it sends intermediate PROGRESS lines reporting its progress (in the
form of current/max).

Similarly, the initial implementation of 'adb bugreport <zip_file>'
would print an initial 'please wait' message and wait for the full
stdout before parsing the result, but now it uses a new callback class
to handle the stdout as it is generated by bugreportz.

BUG: 28609499

Change-Id: I6644fc39a686279e1635f946a47f3847b547d1c1
(cherry picked from commit cd42d658b2d08ace81b5ae3b108acbaca1a1d439)
/system/core/adb/bugreport.cpp
d18854218ec1e9fa2659f6c8be1ca17adefe68fb 26-Jul-2016 Felipe Leme <felipeal@google.com> Refactored functions that copy sdout and stderr to strings to use a callback.

BUG: 28609499

Change-Id: I04aea346e18678ea00797f7f659480edba4436c2
(cherry picked from commit 07ac8554b477dc81579a5e63a2fbabc740fa8a92)
/system/core/adb/bugreport.cpp
218e1ff75998052c7bb30b483c15e75a853283a8 20-Jul-2016 Felipe Leme <felipeal@google.com> Split bugreport() into its own file and added unit tests.

bugreport() will be soon refactored to track progress, which will
require more comprehensive unit tests.

As such, it's better to move it to its own files, which in turn also
requires moving send_shell_command() and usage() to commandline.h.

Fixes: 30100363
Bug: 30268737

Change-Id: I3cdf114a0b5547293320042ff0749a60886440b0
(cherry picked from commit 78e0963e4bce9cc9f0bbf0b686004ba15b1e3929)
/system/core/adb/bugreport.cpp