Two REMOVE_PROVIDER messages caused by race condition.

Fix a bug in unstable ContentProvider.
IllegalStateException: ref counts can't go to zero here: stable=0 unstable=0
IllegalStateException: unstable count < 0: -1

There is a race between main thread and background database thread. Main thread
is responsible for handling the REMOVE_PROVIDER message. Database thread starts
insert or query request again and again. acquireProvider in db thread will often
snatch provider from the jaws of death, sometime it fails to remove REMOVE_PROVIDER
which is already fired out from MessageQueue. But completeRemoveProvider in main
thread gets suspended when trying to execute the critical section. If db thread
released the provider before main thread resumes the execution, then two
REMOVE_PROVIDER messages will be executed.

Change-Id: I8588aa1d1a8bc444dcd2adf6f8bc3f055cebbdc4
Signed-off-by: Guobin Zhang <guobin.zhang@intel.com>
Fix spurious ANR occurence when MOTION batch event is not served by the InputTransporter

Sometimes Batch event of MOTION type is not processed by the Input Transporter
even though it is queued to the waitQueue-Responsible for ANR whenever any event
response does not come from the App. To fix this issue, one Boolean lock is added.
Thus InputTransporter wont ignore the Batch event.
Issue: https://code.google.com/p/android/issues/detail?id=41755

Change-Id: I3bb2eb4cf1f8ecdd1d04671c0e8205dee4ad3a6c
FW : Fix  Tablet Layout (Clock & Notification)

When Center clock was chosen as an RC option, the clock would
dissapear from the StatusBar and Notification curtain in tablet
mode.  Also StatusBar notification icons were not aligned with
clock & signal icons.

This fixes both of those issues.

Change-Id: I8ce79314c42b322f4e13c102815131c400c562c2
Signed-off-by: Zaphod <mwilson@acesappraisal.com>
Fix resource leak: When call MediaMetadataRetriever.setDataSource or getFrameAtTime should ensure call release in finally to avoid resource leak
                   Patch set 2: Remove unnecessary white spaces

Change-Id: I49a7f2fb99dc8b9560e7c17421125356e45a87ac
Add keymapping for select BT headsets

Per CYAN-522, select BT headsets (e.g. Jabra Street, Jabra BT3030, etc)
send key 159 for fast-forward button, instead of the expected key 208.

Need's testing with affected BT devices.

Change-Id: I06ba689f77dd1058fb82b1de9f72b4df59150cf9
Prevent Sym key from showing the IME picker

By default InputMethodManager will popup an IME picker when pressing
the Sym key.

This can be disabled by setting config_symKeyShowsImePicker to false in the
overlay (so the Sym key will show the symbol windows selector for ex.)

Ported from jellybean (was Change-Id: Id61e2d1d66babbb5bd15d7dcf280c1cb76bced46)
http://review.cyanogenmod.org/25787

Signed-off-by: Michael Bestas <mikeioannina@gmail.com>

Change-Id: I5ee2542c081dca14d2e22724cc2616519716dd45
am: Allow more hidden apps on devices with lots of RAM

 * If more than 1.5GB is present, allow up to 40 hidden apps.
 * Number is somewhat arbitrary, but was found to work well on D2.
 * Also look at the sys.mem.max_hidden_apps value if given.

Change-Id: I2d3cf6e0dad1bc0b482cc37bf9c61ed2f2b4be51