When a movePackage operation is requested, don't allow multiple requests
to pile up for one package. Once a move is completed, an observer will
receive the message and be allowed to call movePackage again.
Change-Id: Ie3842b6d96446febc0037bf9b8f1ca250735edc2
The NotificationManager tries to crash the calling app, but
in the case of a service calling startForeground, the caller
is the ActivityManager, so system_server goes down.
NotificationManagerService#enqueueNotificationInternal is a
new internal-only method that accepts a UID/PID to use when
punishing bogus notifications (such as the one in
http://b/2869787).
Change-Id: I84a9854bae630bc90288cebb94f174809d5dac8c
I was seeing lots of stack traces of people hung for noticeable
amounts of time when switching between activities.
e.g. On of the common gmail stacks showing this pause was:
android.os.StrictMode$StrictModeDiskWriteViolation: policy=391 violation=1
at android.os.StrictMode$AndroidBlockGuardPolicy.startHandlingViolationException(StrictMode.java:272)
at android.os.StrictMode$AndroidBlockGuardPolicy.onWriteToDisk(StrictMode.java:243)
at dalvik.system.BlockGuard$WrappedFileSystem.open(BlockGuard.java:238)
at java.io.FileOutputStream.<init>(FileOutputStream.java:97)
at java.io.FileOutputStream.<init>(FileOutputStream.java:69)
at com.android.server.am.UsageStatsService.writeStatsFLOCK(UsageStatsService.java:424)
at com.android.server.am.UsageStatsService.writeStatsToFile(UsageStatsService.java:398)
at com.android.server.am.UsageStatsService.notePauseComponent(UsageStatsService.java:539)
at com.android.server.am.ActivityManagerService.updateUsageStats(ActivityManagerService.java:1856)
at com.android.server.am.ActivityStack.startPausingLocked(ActivityStack.java:667)
at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2925)
at com.android.server.am.ActivityStack.requestFinishActivityLocked(ActivityStack.java:2836)
at com.android.server.am.ActivityManagerService.finishActivity(ActivityManagerService.java:2276)
at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:237)
at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:1415)
at android.os.Binder.execTransact(Binder.java:320)
at dalvik.system.NativeStart.run(Native Method)
at android.app.ActivityManagerProxy.finishActivity(ActivityManagerNative.java:1454)
at android.app.Activity.finish(Activity.java:3260)
at android.app.Activity.onBackPressed(Activity.java:1929)
at android.app.Activity.onKeyUp(Activity.java:1907)
at android.view.KeyEvent.dispatch(KeyEvent.java:1088)
at android.app.Activity.dispatchKeyEvent(Activity.java:2087)
at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:1661)
at android.view.ViewRoot.deliverKeyEventToViewHierarchy(ViewRoot.java:2543)
at android.view.ViewRoot.handleFinishedEvent(ViewRoot.java:2516)
at android.view.ViewRoot.handleMessage(ViewRoot.java:1866)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:3609)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
at dalvik.system.NativeStart.main(Native Method)
Change-Id: Id49157bc635017292eaefddc5e22d73f5f4ab05e
There was a bug that causes WindowManagerService to lose
the fontScale setting.
This fix submitted on behalf of Casey Burkhardt.
Change-Id: I3a76de15adf13badc5efca8d620d14c972a96ec4
Merge commit '321f7fad5c4a6ef27e944dc72e2ddbfb61af81de' into gingerbread-plus-aosp
* commit '321f7fad5c4a6ef27e944dc72e2ddbfb61af81de':
Making sure that there is no notification when focus changes from something to nothing.
This commit will make the default LED colors in the NotificationManager
for battery charge customizable via overlays. The blink on/off
times are customizable in the same manner.
Change-Id: I57ce93656cc4080f5b99554df0ada44c5b31e959
Must clean up default route if a default 3g connection is replaced
by a non-default (ie, mms) connection on the same interface.
Also stop mucking with all connections dns and routes - do it only
for the connection that has changed.
bug:2865974
Change-Id: I589a0b2768b5e67b608fde181e7ddbd7fce4f491
Merge commit '8b61b68b648985df37197de204398f608c4ad8b1' into gingerbread-plus-aosp
* commit '8b61b68b648985df37197de204398f608c4ad8b1':
Only install after MCS success
If MCS dies in the middle of a call during install, only proceed if the
call was successful. Otherwise wait for the max retries to be reached
and run the failure handling code there.
Change-Id: I00a27ea91046ea6521a3cff5e5ffe2c71b2b5bb4
Merge commit 'd2165cfce7911dac66d1195ed9123e79b086d22b' into gingerbread-plus-aosp
* commit 'd2165cfce7911dac66d1195ed9123e79b086d22b':
StrictMode: time violations in Binder calls
Merge commit '85673d91681e6b5dede0c72f36ed3b81f5c4bb0d'
* commit '85673d91681e6b5dede0c72f36ed3b81f5c4bb0d':
Clear preferred activities when home process crashes
Merge commit 'a4fd0078d138b433d2250a74833ee3cc6424143a' into gingerbread-plus-aosp
* commit 'a4fd0078d138b433d2250a74833ee3cc6424143a':
Clear preferred activities when home process crashes
If the "default" Home application has been replaced with
a third-party app that is repeatedly crashing at start-up,
there is no way for the user to clear the preferred activities
or uninstall the bad application. If we clear the package
preferred activities when the application crashes, the user
will be prompted with the ResolverActivity at the next boot
and can try using the app again or choose to use another
Home application.
Change-Id: I8ba8e95e6752916d50515d96c117d3084fa980fd
Merge commit '52075987c5726c95613f98571aac4c54e8319df4'
* commit '52075987c5726c95613f98571aac4c54e8319df4':
Fix a bug where we cleaned an apps external data when upgrading it. :(
Merge commit '31b5d5485f7336639d252da7ba979234dbd2f1e1' into gingerbread-plus-aosp
* commit '31b5d5485f7336639d252da7ba979234dbd2f1e1':
Fix a bug where we cleaned an apps external data when upgrading it. :(
Merge commit '6ec402b5ae33c8927694d8522b4cc6a5c8ba974e' into gingerbread-plus-aosp
* commit '6ec402b5ae33c8927694d8522b4cc6a5c8ba974e':
DO NOT MERGE: Fix input event injection ANRs on UI thread.
Added a new asynchronous injection mode and made the existing
synchronization mechanism more robust.
Change-Id: Ia4aa04fd9b75ea2461a844c5b7933c831c1027e6
Added a new asynchronous injection mode and made the existing
synchronization mechanism more robust.
Change-Id: I0464f70ff5cbd519dbb02686b2cb5d810fe7dbb2
MS-Assisted support should not be required for using MS-Based mode.
Change-Id: Ia6ee219674de3e9cc13190b753f8776305a4fa90
Signed-off-by: Mike Lockwood <lockwood@android.com>
When all audio tracks have been disabled and the mixer is running idle before the output stream is placed in standby,
the mixer sometimes fails to write to the output stream on time to avoid underrun.
This is because the sleep period used to wait before the next write to output stream is too close to the actual buffer duration.
In fact this sleep time is not critical as if we write too early to the output stream, the kernel driver will wait for free buffers
from the audio DSP DMA and we will sleep anyways.
The fix consists in dividing the calculated wait period by 2 to increase the margin.
Change-Id: I5730887dc2ccce2a511bc858494a6f7da6b392a0
Merge commit '45dc4f82a00e52b12389b22a7cfbbee5609e8e28'
* commit '45dc4f82a00e52b12389b22a7cfbbee5609e8e28':
Allow creation of an audio effect on a session with no audio tracks.
Merge commit '493941b8d8a12ee843d9823c0177f8005a7be54f' into gingerbread-plus-aosp
* commit '493941b8d8a12ee843d9823c0177f8005a7be54f':
Allow creation of an audio effect on a session with no audio tracks.