Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0e16d899 authored by Yuxian Xu's avatar Yuxian Xu Committed by Hung-ying Tyan
Browse files

liblog#__android_log_btwrite__android_logger_list_read fail



With replaced AOSP system.img, adb can be root by other test.
The fail is caused by the reason that logdw is still active after
__android_log_close().

This test has a potential bug.
proc/net/unix may contain '\0', then "grep" command will treat this file
as a bianry file.
Using "grep -a" instead of "grep" could be a safer way to get the right
results from bianry file.

bug: 112250722
Test: Build CTS
Test: Pixel 2 XL PPP5.180610.010 passed the following tests
Test: run cts-on-gsi -m CtsLiblogTestCases --skip-preconditions
Change-Id: I9bfca1522e90ebb68e6cecbdb63e3b67248e47c4
Signed-off-by: default avatarXinghua Yang <xinghua.yang@mediatek.com>
parent 6590255d
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -130,7 +130,7 @@ static bool isPmsgActive() {

static bool isLogdwActive() {
  std::string logdwSignature =
      popenToString("grep /dev/socket/logdw /proc/net/unix");
      popenToString("grep -a /dev/socket/logdw /proc/net/unix");
  size_t beginning = logdwSignature.find(' ');
  if (beginning == std::string::npos) return true;
  beginning = logdwSignature.find(' ', beginning + 1);
@@ -144,7 +144,7 @@ static bool isLogdwActive() {
  end = logdwSignature.find(' ', end + 1);
  if (end == std::string::npos) return true;
  std::string allLogdwEndpoints = popenToString(
      "grep ' 00000002" + logdwSignature.substr(beginning, end - beginning) +
      "grep -a ' 00000002" + logdwSignature.substr(beginning, end - beginning) +
      " ' /proc/net/unix | " +
      "sed -n 's/.* \\([0-9][0-9]*\\)$/ -> socket:[\\1]/p'");
  if (allLogdwEndpoints.length() == 0) return true;