Bernardo Rufino 7a29413429 Don't consider tasks with INITIALIZING top activity as visible
To fix b/130645908, tasks with top activities in INITIALIZING state were
considered visible. This allowed apps to circumvent background activity
launch restriction by starting 2 activities when in a background stack.
The first activity will remain in INITIALIZING state (since it's in the
bg), so the second launch is permitted since top activity is
INITIALIZING.

Removing '|| topActivity.isState(INITIALIZING)' removes the
vulnerability and curiously still allow the legitimate use case of the
bug linked above to work, i.e. the test in ag/7088262 still passes. This
is because of 2 reasons:
1) Grace period introduced in ag/7638265.
2) Allow bg activity starts to put activity on top of bg task (instead of
   fg’ing it) in ag/7190176.

I verified (2) by removing the grace period check, reverting the linked
CL and verifying that the test failed.

This essentially reverts ag/7090415.

Test: atest BackgroundActivityLaunchTest \
          RootWindowContainerTests \
          WmTests:ActivityStarterTests \
          CtsWindowManagerDeviceTestCases:ActivityStarterTests
Bug: 138583650
Bug: 130645908
Change-Id: Iee4ba841c6c83888b55c5cb55fffc949048d2030
2019-09-19 08:00:42 +00:00
2019-07-15 12:05:54 +02:00
2019-06-28 10:15:37 +01:00
2019-08-23 02:13:40 +00:00
Description
No description provided
21 GiB
Languages
Java 73.7%
Kotlin 14%
PowerBuilder 5.8%
C++ 5.2%
AIDL 1%