summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-03-25Merge cherrypicks of [16726375] into sc-d2-release.android-12.1.0_r16android-12.1.0_r15android-12.1.0_r14android12L-d2-s4-releaseandroid12L-d2-s3-releaseandroid12L-d2-s2-releaseAndroid Build Coastguard Worker
Change-Id: I8e30841279f21542ebe9b297271842d1a408050b
2022-03-25Dialing phone state should update active subDante Russo
SUPL emergency request can come into the framework while in Dialing phone state before the call is answered and goes to Active phone state. The active sub being cached should be updated in either Dialing state or Active state to ensure the SUPL emergency request is made on the correct sub. Test: manual Bug: 211377690 Bug: 214088538 Change-Id: Ic2fa89b76a0e43caa1ea4470c38389c42f506148 (cherry picked from commit 7b0ab311f3572fe795598807466487b10495a3ce) (cherry picked from commit cde6691a4daa1f23cf6cf1f7744c620914182d09) Merged-In: Ic2fa89b76a0e43caa1ea4470c38389c42f506148
2022-03-15Merge cherrypicks of [17180656, 17180657, 17180658, 17180659] into ↵Android Build Coastguard Worker
sc-d2-release. Change-Id: I0d4485f0fd62aad0f110b0d22b22d07a0247e4bd
2022-03-15Revert "Revert "Update BrightnessTracker to use same sensor as ABC.""Alex Hong
This reverts commit 340a7fdfa41bda515f31cb9f61072f151dfbe432. Revert reason: Check if this causes AOC regression Bug: 223124178 Change-Id: Ie40ae07492c8b968093a1f938c37ca39b7d205a9 (cherry picked from commit cebef5d5bdf6f59d5465465df0219b134e124df8) Merged-In: Ie40ae07492c8b968093a1f938c37ca39b7d205a9
2022-03-15Revert "Revert "[RESTRICT AUTOMERGE] Make thresholds tuneable in the ddc""Alex Hong
This reverts commit b464ef4dc204d4de70211289b32cd5cf2db53ce9. Revert reason: Check if this causes AOC regression Bug: 223124178 Change-Id: Ie7f9759b900e0a114eb047cceceecb0a99066a1a (cherry picked from commit cb84b3ffe1a69105286f0efe1a49e5393680fb97) Merged-In: Ie7f9759b900e0a114eb047cceceecb0a99066a1a
2022-03-15Revert "Revert "[RESTRICT AUTOMERGE]DisplayManager: Make sure RampAnimator ↵Alex Hong
sets property in linear space."" This reverts commit 26f62282acff2bce70b54404233fd0f2654ec3e2. Revert reason: Check if this causes AOC regression Bug: 223124178 Change-Id: I4861b3ed5e3bc234ee51c58e95e7a517ce5cbacc (cherry picked from commit c96d601823b85e07eb0016163e7c9d300db66a59) Merged-In: I4861b3ed5e3bc234ee51c58e95e7a517ce5cbacc
2022-03-15Revert "Revert "[RESTRICT AUTOMERGE]DisplayManager: Switch RampAnimator to ↵Alex Hong
ramp in HLG space."" This reverts commit e828f33713a4a9103f10fdc1affe21e144635c16. Revert reason: Check if this causes AOC regression Bug: 223124178 Change-Id: If01ec6728c1723d4763dc32b7b206dd2ee73335f (cherry picked from commit 5fb150a5a1beaebb228eb6d01d69298b646eade2) Merged-In: If01ec6728c1723d4763dc32b7b206dd2ee73335f
2022-03-15Merge cherrypicks of [17136846, 17040109] into sc-d2-release.Android Build Coastguard Worker
Change-Id: I887f8044fe8bd7f5f0f6b1f901208554f76b8d89
2022-03-15Revert "Fixes cannot leave dozing when dismiss keyguard"wilsonshih
Regression from I62be9283a1d22119eceae5585960b5775a019153. When dismiss keyguard from shell command, the wakeup signal should only be used when dream activity is on top. Bug: 219376804 Bug: 222429976 Test: atest KeyguardTests KeyguardLockedTests Test: atest WindowManagerServiceTests Change-Id: I4edab8588421b3e341cf3bde07e989ff5e651cfe Merged-In: I4edab8588421b3e341cf3bde07e989ff5e651cfe (cherry picked from commit 0063c2488e0eacb103ed33f2b1397a7d83c225d0) Merged-In: I4edab8588421b3e341cf3bde07e989ff5e651cfe
2022-03-15Fix dialog exit animationJordan Demeulenaere
This CL fixes a bug that could happen when animating a dialog out at the same time as hiding the SystemUI shade, and that would make the phone unusable until the shade is swiped down again. See b/223387276 for more info. Bug: 223387276 Test: Manual, see b/223387276#comment1 Change-Id: If251b00558a5ca9a927d1be2bb015f1c0acb2d57 (cherry picked from commit 631a7ef1a60a8d61077e1762e5a18cc53e8211f4) Merged-In: If251b00558a5ca9a927d1be2bb015f1c0acb2d57
2022-03-10Merge cherrypicks of [17106563, 17106564, 17106565, 17106566] into ↵Android Build Coastguard Worker
sc-d2-release. Change-Id: Ifd727d5064de25b553aa423fd2453aa3055eb2e0
2022-03-10Revert "[RESTRICT AUTOMERGE]DisplayManager: Switch RampAnimator to ramp in ↵Alex Hong
HLG space." This reverts commit 682f01c6a92053a622bfb9acd3e78bf4690d3427. Revert reason: Check if this causes AOC regression Bug: 223124178 Change-Id: Ia410597785e9d0b636c69450ffb5ff6712253bd2 (cherry picked from commit 9b752ff2d972b2defec34fdeeb801533975e7262) Merged-In: Ia410597785e9d0b636c69450ffb5ff6712253bd2
2022-03-10Revert "[RESTRICT AUTOMERGE]DisplayManager: Make sure RampAnimator sets ↵Alex Hong
property in linear space." This reverts commit 46ddcce6644b5209e0c1fb5342554ca7e507f707. Revert reason: Check if this causes AOC regression Bug: 223124178 Change-Id: I11d62ad3ebecb1df40858d9fe06fb1340830549d (cherry picked from commit 557c9ddc97583e7fdbcf81da650ff5360c7b7f66) Merged-In: I11d62ad3ebecb1df40858d9fe06fb1340830549d
2022-03-10Revert "[RESTRICT AUTOMERGE] Make thresholds tuneable in the ddc"Alex Hong
This reverts commit 7ace3f267538f0f4ddec44f7711d3d268c4b58dc. Revert reason: Check if this causes AOC regression Bug: 223124178 Change-Id: Ia22b68ff8763cea754cfbd22fd7a46893f1f62ac (cherry picked from commit 5ca0a453e2b269a6422a3943a599884869ae96ac) Merged-In: Ia22b68ff8763cea754cfbd22fd7a46893f1f62ac
2022-03-10Revert "Update BrightnessTracker to use same sensor as ABC."Alex Hong
This reverts commit f24d549cc6f025c5559b257708954c5987595bde. Revert reason: Check if this causes AOC regression Bug: 223124178 Change-Id: I5dc8cf05746963131cc72b989fdc18b8789ffb31 (cherry picked from commit 0efb2453475fefb49327a0cf838fc6a9e469337a) Merged-In: I5dc8cf05746963131cc72b989fdc18b8789ffb31
2022-03-10Merge cherrypicks of [17145222] into sc-d2-release.Android Build Coastguard Worker
Change-Id: I68df5f9f1af0e9aefb815a39c133880dbd2130f0
2022-03-10Revert "[DO NOT MERGE] Keyguard was hiding occluding activities"Matt Pietal
This reverts commit 267ecd151e8e7ad313cbe1a511f18d2d78f2e459. Reason for revert: regression b/223088536 Change-Id: I5e82ad358a8c7c7027415ab55c5d7e5bd3c05527 (cherry picked from commit d7fe18428fe3455e25fb1ed5e052d2e9b498f065) Merged-In: I5e82ad358a8c7c7027415ab55c5d7e5bd3c05527
2022-03-08Merge cherrypicks of [16838784, 16871451, 16850576] into sc-d2-release.Android Build Coastguard Worker
Change-Id: Ib8e4584756fab274fb3ac9a5ade0b936525d32dc
2022-03-08Remove QQS brightness controllerFabian Kozynski
This was not being used and it was leaking ContentObservers Test: heapdump, switching between splitshade and not splitshade many times Test: atest com.android.systemui.qs Fixes: 218888308 Change-Id: I63501bf573e006f52379192b7b766283fea40dda Merged-In: I63501bf573e006f52379192b7b766283fea40dda (cherry picked from commit 32b7c35f24d29a4e87e386267c725549cc1b6259) Merged-In: I63501bf573e006f52379192b7b766283fea40dda
2022-03-08Remove toast window token after being rate-limitedBeverly
Test: manual, atest NotificationManagerServiceTest Fixes: 211005909 Change-Id: I2375b72cb60ee535dcb78aa0d064455c5247b4f6 (cherry picked from commit 2a35959ecdc793a0f522c8afd57cf24f3b73ad8d) (cherry picked from commit f53f2ad864d022b8a81216e35068c6ce062d33c9) Merged-In: I2375b72cb60ee535dcb78aa0d064455c5247b4f6
2022-03-08DO NOT MERGE DozeScreenState unregisters for AuthControllerCBBeverly
Test: atest DozeScreenStateTest Fixes: 218885442 Change-Id: Ib6cbdf14c2a1ec6aedfb0924ed30983779f7d624 (cherry picked from commit 0d4aa6312abd05a2718e4fbd9c0ddd8ccfe55c3d) Merged-In: Ib6cbdf14c2a1ec6aedfb0924ed30983779f7d624
2022-03-03Merge cherrypicks of [17005881] into sc-d2-release.Android Build Coastguard Worker
Change-Id: I208dbedd0fd6d4cd512b0071e622b4364c5c9a6d
2022-03-03Don't re-hide the keyguard if it isn't showing.Josh Tsuji
This has a horrifying and unpredictable side effect of triggering post-unlock Runnables that are stored in StatusBar.java, which can result in a blank screen on unlock in certain race conditions. Test: unlock, launch an app during the unlock animation, press power, wake up at bad time Test: I wrote a custom build to force the above scenario to verify this works Fixes: 214647311 Merged-In: I00655c2e85c46bd0c52b77094757e155b1a6f9c9 Change-Id: I9261ab9f04cc06db379676dccca72e452ece98d7 (cherry picked from commit c3a2eeaed337f445424d3b086ee0d14f1d9358e1) Merged-In: I9261ab9f04cc06db379676dccca72e452ece98d7
2022-03-02Merge cherrypicks of [17043352] into sc-d2-release.Android Build Coastguard Worker
Change-Id: I87f4ad0a97f4adda889009307ae1ac0d4fb20b09
2022-03-02[DO NOT MERGE] Keyguard was hiding occluding activitiesMatt Pietal
Most reproducible while the device is asleep on AoD for a period of time. The system detects the double tap power gesture, and launches the camera activity immediately. However, in the failing case, DreamManagerService only stops the dream after the activity has been launched. This setOccluded path has already happened when the call to wakeup comes in and decides that the StatusBarState should equal KEYGUARD, which is incorrect. This blocks the activity which is running underneath. The correct state is SHADE. Add a check for occlusion before deciding to show the keyguard Fixes: 199349731 Test: launch camera over lockscreen Change-Id: I817fcdc80db79ad95367dc7a49eadaa5e366c3ef (cherry picked from commit 7a2abccf35a28accc7acc563a7c34a44f9bb2212) (cherry picked from commit 267ecd151e8e7ad313cbe1a511f18d2d78f2e459) Merged-In: I817fcdc80db79ad95367dc7a49eadaa5e366c3ef
2022-03-01Merge cherrypicks of [16658748] into sc-d2-release.Android Build Coastguard Worker
Change-Id: I55125bb31804fb5237b26aaebb9e3e4e4f4d13ce
2022-03-01Skip restore of read-only directoriesRuslan Tkhakokhov
Currently trying to restore a read-only directory results in only the directory being restored but not its contents. This causes problems for some apps (see the associated bug). Skip restore of read-only directories while we evaluate the priority of proper suport for this use case. Bug: 194894879 Test: Manual: 1. Populate a read-only directory in an app's folder (/data/user/0/<package-name>) 2. Run backup for the app 3. Clear app data (adb shell pm clear <package-name> 4. Run restore for the app 5. Inspect app folder to ensure all writable content is restored. Merged-In: I644a5784fb42352ba28ac944d3aa3564b0215a78 Change-Id: I644a5784fb42352ba28ac944d3aa3564b0215a78 (cherry picked from commit 98f8122702709355750e618ce434ab798864f885) Merged-In:I644a5784fb42352ba28ac944d3aa3564b0215a78
2022-02-24Merge cherrypicks of [16743384, 16749439, 16737883, 16638963] into ↵Android Build Coastguard Worker
sc-d2-release. Change-Id: Ib13bd2e7af925334bf808729a901caf2a637be7d
2022-02-24Update BrightnessTracker to use same sensor as ABC.Santos Cordon
Bug: 209948220 Test: manually check the sensor for BrightnessTracker using dumpsys display. Test: atest BrightnessTrackerTest Change-Id: I20d93322cc42c28bc2c74c9ce048b0f550bb8127 (cherry picked from commit 817d2df3a73dfd8632690d36fdae9378d5d96b63) Merged-In:I20d93322cc42c28bc2c74c9ce048b0f550bb8127
2022-02-24[RESTRICT AUTOMERGE] Make thresholds tuneable in the ddcFiona Campbell
Add screen and ambient thresholds to the ddc. Use these values as a minimum required change, so that brightness can be more stable at lower light levels. Bug: 205683328 Bug: 209948220 Test: adb shell dumpsys display Test: atest AutomaticBrightnessControllerTest Change-Id: I3af6d754899d75ed51964ed7ad140f1572ec41b0 (cherry picked from commit 821378695467acd97f64071bdbd251651748a987) Merged-In:I3af6d754899d75ed51964ed7ad140f1572ec41b0
2022-02-24[RESTRICT AUTOMERGE]DisplayManager: Make sure RampAnimator sets property in ↵Chris Kuiper
linear space. This fixes the case where RampAnimator is used the first time and immediately jumps to the target brightness. In that case the property was set to a value that has not been converted back into linear space, causing an incorrect initial brightness value. To avoid these bugs, consolidate setting of the property into one function. Bug: 217289549 Test: Cannot reproduce bug. Change-Id: I2ccdaa51ddba062fc5de1209470b90eb429280db (cherry picked from commit 47461bb5aef25af6cdb6234e93c3daa99c166f6d) Merged-In:I2ccdaa51ddba062fc5de1209470b90eb429280db
2022-02-24[RESTRICT AUTOMERGE]DisplayManager: Switch RampAnimator to ramp in HLG space.Chris Kuiper
This switches the ramp animator logic to ramp in the perceptual HLG space, thereby making ramping appear linear to the human eye. Bug: 204252940 Test: Verified on Pixel 6 Pro that ramping is much more linear and consistent. Change-Id: I946e1570e654eb25aa334be827ca3d15cba21c48 (cherry picked from commit 692f088bba1a2b0e095cefba7f86298fa8531aba) Merged-In:I946e1570e654eb25aa334be827ca3d15cba21c48
2022-02-23Merge cherrypicks of [16687106, 16681227, 16664941, 16719697, 16461958, ↵Android Build Coastguard Worker
16612527, 16742068, 16778744, 16827478] into sc-d2-release. Change-Id: I41c87b1d331e0480b192bb4e7cece4f379f45734
2022-02-23Fix bug where shade is infinitely squishy after wallpaper changeLyn Han
This change fixes a bug where opening an empty shade after wallpaper update => messes up qs button unfurling => hides the "no notifications" text This bug happened because => wallpaper change causes theme change => on theme change, NSSLC reinflates EmptyShadeView with visibility=false => nothing resets EmptyShadeView visiblity=true on shade open => AmbientState has 0 visibleChildren during shade open, so stackHeight is 0 and expansionFraction is infinity The solution is to have NSSLC update EmptyShadeView visibility after re-inflation. Fixes: 215038354 Fixes: 218501868 Fixes: 218380326 Test: have no notifications, change wallpaper, open shade => qs button squishiness animates fine => "no notifications" text shows up fine => log squishiness: no infinity or NaN Change-Id: Iaa10605079db7edc79771a1cd9f4cc17f847c4cb (cherry picked from commit d2adae5b5d8a1b6a77386cc7eaf98dafe4b43ce4) (cherry picked from commit cf293657bf6520ea04f0c5eab493ad06f1f472f5) Merged-In:Iaa10605079db7edc79771a1cd9f4cc17f847c4cb
2022-02-23Security fixes for PendingIntent related apis in LauncherAppsPinyao Ting
Allowing arbitrary activityOptions during the creation of PendingIntent is a source of security vulnerability. This CL removes activityOptions from the call-site. Bug: 209607104 Test: manual Change-Id: Id262b9a0de58d8834c85d925cf84bb44b8b99742 Merged-In: Id262b9a0de58d8834c85d925cf84bb44b8b99742 (cherry picked from commit e41e04bb8cb930c079597bc0008540461c57ffe1) Merged-In:Id262b9a0de58d8834c85d925cf84bb44b8b99742
2022-02-23[RESTRICT AUTOMERGE] Add hide-non-system-overlay flag for ↵Jeff Chang
HarmfulAppWarningActivity A malicious application could overlay the activity. The overlay is able to be tapped through, which can trick the user into starting a harmful activity. The CL added the flag SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS for the activity to prevent the tapjacking/overlay attack. Bug: 205595291 Test: atest CtsHarmfulAppWarningHostTestCases Change-Id: Ia1a1ae0dc451e04bf5c31e3cb8cf30a0d8e32991 (cherry picked from commit a04b3666b8619e09e08646c6d5c529d016cbfb47) (cherry picked from commit f36b7b9f80fde732aa102b04cd8ce6a6db1a3616) Merged-In:Ia1a1ae0dc451e04bf5c31e3cb8cf30a0d8e32991
2022-02-23Restrict AdbManager broadcasts to apps with MANAGE_DEBUGGING permission.Joshua Duong
Bug: 205836329 Test: atest AdbDebuggingManagerTest Change-Id: If18a874c6d6232d9131f2cc3de3614ef67a58bbd (cherry picked from commit b139e9966102ba6fa1a4801214ea92e8afe376a6) (cherry picked from commit dc7d96c9e50fb2cc38c1c53eb03b975f6de9d0e7) Merged-In:If18a874c6d6232d9131f2cc3de3614ef67a58bbd
2022-02-23Validate pid can be trustedGanesh Olekar
Bug: 200288596 Test: Manual Test: atest android.security.cts.AttributionSourceTest#testPidCheck Change-Id: I07f86ba220bedb1393f4d7ed23175e92d4576601 (cherry picked from commit f29223746d9009a592b0ee7ee5a92398589c5b53) Merged-In:I07f86ba220bedb1393f4d7ed23175e92d4576601
2022-02-23Add leash check in PipTaskOrganizer#fadeExistingPipHongwei Wang
Bug: 197319184 Test: N/A, not sable to reproduce the issue, adding protection based on the stack trace Change-Id: I6363dd425eac6332f59fe1fed074c6518227580f (cherry picked from commit 4353053c87a8512f66f93c6d1b7583b584d21e71) Merged-In:I6363dd425eac6332f59fe1fed074c6518227580f
2022-02-23Fix a mismatch in Bitmap_createFromParcelJohn Reck
Test: atest android.security.cts.BitmapTest Bug: 213169612 Change-Id: I03330acca99b6e62668ab7c1325f2f93361b2b50 (cherry picked from commit a52463fd6e71dd0563b3fd8883b4ccaf9f858e8b) Merged-In:I03330acca99b6e62668ab7c1325f2f93361b2b50
2022-02-23Check current user when the operations runs for fingerprint hidl.Joe Bolinger
The current and target user are both provided to the switch client constructor which is brittle unless operations are scheduled and run synchronously. Commit 9a99503870074d40d794245d9e3ac7a076f5b2f2 changed the handlers and somehow caused a bug where the cached current user was out of sync. The switch client tries to optimize for this and can skip switching when that occurs. This also includes two additonal changes 1) a few updated logs from the original change and 2) restores each scheduling having its own handler for clarity. Bug: 213962104 Bug: 210090299 Test: atest UserAwareBiometricSchedulerTest BiometricSchedulerTest BiometricSchedulerOperationTest SensorTest Face10Test Test: manual (flash, enroll fingerprint, add work profile account, reboot, verify fingerprint still works) Change-Id: Ifb73b0145aeb8afb62d1f55d2f881347b0d2ef8a Merged-In: Ifb73b0145aeb8afb62d1f55d2f881347b0d2ef8a (cherry picked from commit acc815e3edb203f5bac5af399b291c5c173433f9) Merged-In:Ifb73b0145aeb8afb62d1f55d2f881347b0d2ef8a
2022-02-23Fix enrollment cancelation race conditions.Joe Bolinger
Bug: 210090299 Change-Id: Idd1485f182cf841b96ced1dab4b8330ff3b57c2a Merged-In: Idd1485f182cf841b96ced1dab4b8330ff3b57c2a (cherry picked from commit abc127673bf8f030cfb92d2f94d8f14baf9cd2aa) Merged-In:Idd1485f182cf841b96ced1dab4b8330ff3b57c2a
2022-02-18Merge cherrypicks of [16719218] into sc-d2-release.Android Build Coastguard Worker
Change-Id: Ie13250bc7a1a273f87387c0b1fac8632143c96d8
2022-02-18[DO NOT MERGE] Keyguard PIN View - Landscape fixesMatt Pietal
Upon entering landscape, updated resource values were not being applied to the num pad keys or other elements. Manually apply. Fixes: 214985639 Test: manual (launch camera on lockscreen, rotate, use unlock button, observe) Change-Id: Iff67fb46ceb9bb1b626f0d57e42aa232daec59a3 (cherry picked from commit 3695a34ec9288c6679aef8ee20ed985ce67db56e) Merged-In:Iff67fb46ceb9bb1b626f0d57e42aa232daec59a3
2022-02-17Merge cherrypicks of [16904594] into sc-d2-release.Android Build Coastguard Worker
Change-Id: Ibf928b6a7b5169d0d0bf9e5161e5a8e0a6047a5b
2022-02-17DO NOT MERGE Doze-Pulsing should always go to display onBeverly
The only exception is if the device requires a blank frame before turning the display back on. Test: atest DozeMachineTest Test: make a phone call, then enter AOD and attempt UDFPS to see HBM Bug: 213875085 Change-Id: Ia3025c1b6e479180edf489dcb53dec8f81f7820f (cherry picked from commit a1d372c4ce418511317c7d2e249c6b31b0a02cfb) Merged-In:Ia3025c1b6e479180edf489dcb53dec8f81f7820f
2022-02-10Merge cherrypicks of [16778403] into sc-d2-release.Android Build Coastguard Worker
Change-Id: I2aa0883fedd26a917a38317b22e7c491ffbf709e
2022-02-10DO NOT MERGE Fix issue with bubble stack & bubble data expanded bit being ↵Mady Mellor
out of sync If onBackPressed was used while the stack was expanded, it was calling setExpanded on BubbleStackView (BSV) and NOT BubbleData. This results in BSV and BubbleData being out of sync which can lead to incorrect behavior. (e.g. using individual bubble dismiss method instead of the stack dismiss method). Test: atest BubblesTest NewNotifPipelineTest Fixes: 217361258 Change-Id: I748fdd49626acaa0e986a9d8038039cada6faa60 Merged-In: I748fdd49626acaa0e986a9d8038039cada6faa60 (cherry picked from commit 8f368c53585dfa201fd5bb30e62b02ac8b739254) Merged-In:I748fdd49626acaa0e986a9d8038039cada6faa60
2022-02-01Merge cherrypicks of [16730784] into sc-d2-release.Android Build Coastguard Worker
Change-Id: I94de2f2250b008685a2d26db1672c1b538b4e92c
2022-02-01[DO NOT MERGE] Fix regression for enter PIP when onUserLeaveHintChris Li
This was changed in ag/15886711, but it shouldn't be needed anymore as for case we need to animate the close transition, isVisible() will stay true until the app transition is finished. Otherwise we shouldn't need to keep the surface as visible even if it is in the closing app list. Without this fix, we may accidentally show the surface that has been commited to be invisible, such as enter pip onUserLeaveHint. Fix: 216145863 Test: manually verify with Google Meet. Test: atest WmTests:ActivityRecordTests Change-Id: Ib28651f5c4dc728d19f968adc56015836e307ef8 Merged-In: Ib28651f5c4dc728d19f968adc56015836e307ef8 (cherry picked from commit 0207f039d25eece5f04512bfc1198ef72e5c2e4f) Merged-In:Ib28651f5c4dc728d19f968adc56015836e307ef8