The problem is a bug in AudioFlinger::MixerThread::prepareTracks_l() that makes that even if the TrackHandle
is destroyed, the corresponding Track will remain active as long as frames are ready for mixing.
If the track uses shared memory (static mode) and the sound is looped, this track will play for ever.
The fix consists in removing the track from active list immediately if the track is terminated.
Change-Id: I4582aa1d981079ab79be442fb6185f5afaed5cf3
Bug: 2561150
Race condition: We were basing whether the event loop is
running or not on whether nat->pollData was null or not.
In rare cases, eventLoopMain would have not started,
isEventLoopRunning returns true; java side makes a dbus call
and the watches get set to null, causing a crash in
dbus_connection_set_watch_functions when eventLoopMain starts.
Change-Id: I863f182185a8e956fd53cb58783b7fe0ecfb2ddb
This fixes the package manager to ensure we can't get in this bad state of
an update to a system app being installed as a separate app.
Change-Id: I2a3f601bbc06b74f31ca09192993614bc6885ff7
This change include a minor refactoring of PackageItemInfo and related
classes to eliminate code duplication and to avoid redundant work
searching for an ApplicationInfo instance we already have.
Bug: b/2537578
Change-Id: Id0794c3f055ea58b943028f7a84abc7dec9d0aac
A key bit of code was lost in change 38/25338/5 (2009/09/17 change
of RequestQueue.java) which caused us to not pick up proxy settings.
Putting it back.
bug:2364475
Change-Id: I1e79858f64d8e793a966ef8e6f7a0d3f2a02251f
[Sorted|Keyed]Vector<TYPE> would leak their whole storage when resized
from the end and TYPE had trivial dtor and copy operators.
Change-Id: I8555bb1aa0863df72de27d67ae50e20706e90cf5
and changed the "get next operation to sync" logic just look
at pending syncs, rather than them and periodic syncs
- made syncoperation dup-detection ignore the initialization
sync extra
- made the sync dispatcher treat initialization syncs as just
a regular sync request and also made it explicitly set or
clear the initialization extra based on whether the sync
adapter was in the syncable or unknown state
- change the getNextSync logic to prioritize syncable "unknown"
syncs above everything else (since they should be fast and
are important)
- make it reschedule completed initialization syncs if the
sync adapter is now marked syncable
- fix some logging in SyncStorageEngine
- change SyncStorageEngine to not reuse authority ids when one
is removed
http://b/issue?id=2531359http://b/issue?id=2429638
Change-Id: I79805b582da74f4f0b6193eafaff24c2371d51e8
- make EntityIterator extend Iterator and thus not throw a
RemoteException, instead converting it into a RuntimeException.
- rename ActiveSyncInfo to SyncInfo
- change getActiveSync to getCurrentSync
- remove the accessors in SyncInfo and instead make the final
fields publicly accessible
- made AbstractThreadedSyncAdapter.cancelSync not take a thread
Change-Id: I99fde5585bc5f1e95f4873ffbba189074a8d6372
http://b/issue?id=2553539http://b/issue?id=2553541http://b/issue?id=2553550
AbsListView was relying on TOUCH_MODE_DOWN to signal that the item was
enabled, but onInterceptTouchEvent uses it for other purposes. Check
before dispatching the event.
Change-Id: I6babd3872cb51ebdba8e97a3b349e0cc08cd1279
We don't want to publish this, but for risk mitigation we are hiding it
rather than rewriting/expanding the FileBackupHelper to accomodate the
absolute-path use cases that the system uses internally.
Change-Id: I513c97ec54de8dd7d28b10868d447d94b82d4ec3
Setting the allowed channel count in the
driver can take a long time to potentially
cause ANR in the phone process. Make the call
asynchronous
Bug: 2555117
Change-Id: Ie3c2e6f90aa0ec8ee4b85c989ccae1ca0f2b94f9
Addresses:
Issue #2550648: PackageManagerService setComponentEnabledSetting unconditionally
writes Settings xml
Issue #2549084: Make PackageManager.addPermission have async version
Also make the writing of settings when changing the preferred activities to use
the same async mechanism, and fiddle with thread priorities in the background
thread to go up to foreground priority when holding the lock to write settings
and a few other places. (At some point we should really clean this up to never
acquire the main lock while in the background.)
Change-Id: Ib2b7632543f6fb3f92a225518579f3b2d15e1413
This transaction can involve the transport having to query a remote backend
over the wire, so it can take a Long Time(tm). Make it main-thread-safe by
making it asynchronous, with the results passed as a callback to the invoker's
RestoreObserver. We also make the IRestoreObserver callback interface
properly oneway.
Bug #2550665
Bug #2549422
Change-Id: If18a233a0a3d54c7b55101715c9e6195b762c5a0
If the icon is precomposed or the icon IS null, set the touch icon url. This
ensures there will be a touch icon set if either precomposed or regular is
specified. Precomposed icons take precedence.
Bug: 2546984
Change-Id: Id9291006ecda8659b823ab9629eb98a6f8d45f5e
Bug: 2136464
When the bluez device is created, we get the onDeviceCreated signal.
We add it to our cache when that happens. We can have a device created
even when its not bonded - as a result of OPP. So use this cache to avoid
a DBUS call to Bluez.
Change-Id: I9465da7d72a12a6888128ff40ac1fe598cbae3c3