allow dumpsys SurfaceFlinger in user builds from the shell user
Bug: 8659013 Change-Id: I1de43bb5808cb8c1103cfc73dca59ff70fc13f91
This commit is contained in:
parent
379f0f04cc
commit
bd1153382e
|
@ -2145,11 +2145,14 @@ status_t SurfaceFlinger::dump(int fd, const Vector<String16>& args)
|
||||||
char buffer[SIZE];
|
char buffer[SIZE];
|
||||||
String8 result;
|
String8 result;
|
||||||
|
|
||||||
if (!PermissionCache::checkCallingPermission(sDump)) {
|
|
||||||
|
IPCThreadState* ipc = IPCThreadState::self();
|
||||||
|
const int pid = ipc->getCallingPid();
|
||||||
|
const int uid = ipc->getCallingUid();
|
||||||
|
if ((uid != AID_SHELL) &&
|
||||||
|
!PermissionCache::checkPermission(sDump, pid, uid)) {
|
||||||
snprintf(buffer, SIZE, "Permission Denial: "
|
snprintf(buffer, SIZE, "Permission Denial: "
|
||||||
"can't dump SurfaceFlinger from pid=%d, uid=%d\n",
|
"can't dump SurfaceFlinger from pid=%d, uid=%d\n", pid, uid);
|
||||||
IPCThreadState::self()->getCallingPid(),
|
|
||||||
IPCThreadState::self()->getCallingUid());
|
|
||||||
result.append(buffer);
|
result.append(buffer);
|
||||||
} else {
|
} else {
|
||||||
// Try to get the main lock, but don't insist if we can't
|
// Try to get the main lock, but don't insist if we can't
|
||||||
|
|
Loading…
Reference in New Issue