61303 Commits

Author SHA1 Message Date
Dianne Hackborn
91c2b5cebe Merge "Improve low memory reporting." into ics-mr1 2011-11-14 18:36:50 -08:00
Jeff Brown
9058435dc1 Merge "Fix races when content providers are acquired and released." into ics-mr1 2011-11-14 18:35:57 -08:00
Dianne Hackborn
f10a536460 Merge "Maybe fix issue #5405788: Device continuously opening and closing..." into ics-mr1 2011-11-14 18:35:46 -08:00
Jeff Brown
ddaa9ac896 Fix races when content providers are acquired and released.
This change fixes race conditions that occur very regularly when
content providers are accessed from multiple threads at the same
time.

When a content provider is not already in the application's cache,
the application needs to ask the ActivityManager to obtain it.
Meanwhile, another thread can come along and do the same thing.
This can cause problems because the application attempts to
install two copies of the provider and the reference counts
and other bookkeeping can get muddled.

Similarly, there are races between releasing the last reference
to a content provider and acquiring the content provider.  It's
possible for one thread to snatch the content provider from the
jaws of death.  We need to handle this explicitly to ensure that
the content provider does not accidentally get released right
after it was acquired by the other thread.

This change ensures that the reference count bookkeeping and
provider map are maintained in parallel while holding the same lock.
Previously because the lock was dropped and reacquired in the
middle of acquisition and removal, it was possible for a
content provider with a zero reference count to be returned
to the application.  Likewise, it was possible for a content
provider with a non-zero reference count to be disposed!

This change also performs compensatory actions when races are
detected to ensure that the necessary invariants are maintained
throughout.  In particular, it ensures that the application
drops a duplicate reference to a content provider when no
longer needed.

Another way to solve this problem would be to explicitly prevent
the races from happening in the first place by maintaining a
table of content providers that are in the process of being
acquired.  The first thread to attempt to acquire the provider
would store a record.  The next thread would find the record
and block until the first thread was finished.  I chose not
to implement the code in that manner because we would still
have needed to perform compensatory actions in the case where
the same provider binder has multiple logical names.  Also,
it could cause deadlocks if the attempt to acquire
a content provider were re-entrant for some bizarre reason.

Bug: 5547357
Change-Id: I2ad39a8acc30aaf7ae5354decd0a0a41e9b9c3da
2011-11-14 18:31:13 -08:00
Jake Hamby
87d14a1756 Fix 3GPP SMS send failure for 7-bit national language tables.
Fix a NullPointerException when sending a single-part SMS containing
characters in one of the enabled national language tables.

Also added a few log messages for several error cases to help with
debugging any future problems in the SMS dispatcher.

Bug: 5553544
Change-Id: I61c1cbe297b2e222027f0db7c833df6a03c2974a
2011-11-14 18:30:01 -08:00
Dianne Hackborn
8ec8d41aa6 Improve low memory reporting.
Change-Id: I42d56ab8026fd02232dd11dbfbc513fbc0a1a851
2011-11-14 18:27:24 -08:00
Daisuke Miyakawa
d8f5e6badb Merge "Allow ContactsProvider to remove dulicates" into ics-mr1 2011-11-14 17:54:17 -08:00
Dianne Hackborn
813075a678 Maybe fix issue #5405788: Device continuously opening and closing...
...the "Complete action using" dialog

I have never been able to reproduce this consistently, but here is
another stab in the twilight.  It looks like during boot we have
a potential race where we could reset the config sequence number after
we had gone through a config change, causing ActivityThread to ignore
a following config change.  Maybe this change will help.

Change-Id: I4b731df5fd5c63894ca2e9bd34693b31ab1c0565
2011-11-14 17:45:19 -08:00
Mathias Agopian
274e03c90e fix crash when validating an invalid EGL objects
the code that validated EGL objects dereferenced the object
to access its EGLDisplay -- needed for validation (!).
This was wrong for two reasons, first we dereferenced the object
before validating it (potentially leading to a crash), secondly
we didn't validate that the object existed in the right EGLDisplay.

We now use the EGLDisplay passed by the user API.

Change-Id: I66f9e851d4f8507892a6b1fee3065f124c4e7138
2011-11-14 17:40:21 -08:00
Jamie Gennis
6b228af6ff Merge "EGL: add the ANDROID suffix to the blob cache ext" into ics-mr1 2011-11-14 17:36:46 -08:00
Jean-Michel Trivi
a9509736c8 Fix 5615747 Don't leak remote control client death handlers
Whenever a remote control stack entry is GC'd or removed from
 the stack, unlink its death handler.

Change-Id: Ia4ed6667351849fd388272591e24ffc16959beaf
2011-11-14 17:30:23 -08:00
Jim Miller
2fcd63b8cf Fix 5602985: Show "Emergency calls only" when device has no SIM.
Some countries require phones to show "Emergency calls only" when
roaming on a device with no Sim.  This changes causes the phone
to now display the PLMN string on devices that are voice-capable when
the sim is missing.  This depends on the PLMN containing the text
"Emergency calls only" when the radio has connectivity to any carrier.
Otherwise, the PLMN is expected be null or empty which will cause the
device to just show "No SIM card."

Change-Id: I7c1d4624ae67074e2ca40161845ca8bb36031c42
2011-11-14 17:21:55 -08:00
John Reck
83b9e1d99d Call onScrollChanged when scrolling layers
Bug: 5533389
 Treat layer scrolling as a no-op scroll by calling
 onScrollChanged with old scroll == new scroll

Change-Id: I1dc2b94b37c65bf088806b8d28be32883e3b8bee
2011-11-14 16:17:54 -08:00
Jim Miller
ff95f65725 Merge "Fix 5579440: Add transport control view to tablet unlock screens" into ics-mr1 2011-11-14 16:14:07 -08:00
Tsu Chiang Chuang
d5897dc798 fix for build breakage.
Change-Id: Ie324e46a79923813edd2e5e0c34ede79e6ee3eea
2011-11-14 15:46:16 -08:00
Adam Powell
136a10a2b8 Fix bug 5594320 - Overlay action bar decor layout causes two measure passes
The existing action bar overlay decor layouts hit a case in
RelativeLayout that causes two measure passes for the main content. As
this can be expensive, stick the bar and the content overlay into
their own sub-layout and switch things to use a FrameLayout at the top
level instead.

Be explicit about the layout_width/height on ActionBar-containing
decor layouts as the older decor layouts are.

Change-Id: I4330f0f25841dd8058b94a320f93bf67fb56bf17
2011-11-14 15:34:51 -08:00
Nick Pelly
314252360b Move nfc-extras tests into frameworks/base/nfc-extras/tests.
The new NFC Extras access control allows us to run these tests
without a vendor specific certificate.

Change-Id: I9425e08e557214cf6a74276622402c5682bbaef4
2011-11-14 15:28:47 -08:00
Danielle Millett
8d8e669ea1 Merge "DO NOT MERGE cherry picking from MR0 cl 148223" into ics-mr0 2011-11-14 15:08:05 -08:00
Eric Fischer
8d00c194c2 Merge "Import revised translations. DO NOT MERGE" into ics-mr0 2011-11-14 15:06:30 -08:00
Tsu Chiang Chuang
047c4de2c5 Merge "Adding mobile microbenchmark tests." into ics-mr0 2011-11-14 15:03:17 -08:00
Tsu Chiang Chuang
6a54a997e3 Merge "Adding mobile microbenchmark tests." into ics-mr1 2011-11-14 14:35:42 -08:00
Adam Cohen
6066a2b4de Merge "Fix uncaught exception in WindowManager#setWallpaperOffsets (issue 5613241)" into ics-mr1 2011-11-14 14:33:06 -08:00
Nick Pelly
678a7025dd Enforce 1-1 relationship between context and NfcAdapterExtras.
This fixes a bug where NfcExecutionEnvironment.close() would NPE
if you called it on a different EE to the one you opened. We now
always return the same EE in the same contet.

Change-Id: I949998dc2ee738527ee281cae46ae50ea6950a2c
2011-11-14 14:24:37 -08:00
Winson Chung
9c99aee5b9 Defer adding large icon until when we compose the final notification. (Bug 5566846)
Change-Id: I9f156d7b597112ce14e274f05df421100c9481e6
2011-11-14 14:13:35 -08:00
Jim Miller
faed16030d Fix 5579440: Add transport control view to tablet unlock screens
This updated tablet layouts to support showing album art and transport
control views in PIN, pattern and password screens of lock screen.

It also allows the addition of a background protect asset and
the ability to show the system wallpaper on layouts that define a
transport_bg_protect view.

Also updated layout to use new ICS-style buttons on lock screen and
fixed bug with "forgot pattern" button where we were showing the
emergency call icon.

To avoid problems with leading ones in the mono-space clock font,
we now right-justify status text on tablet and remove the AM/PM
indicator.

Status font size adjusted by UX.

Added background protection drop shadow to transport control.

Fixed portrait mode to be right-justified when transport is showing.

Change-Id: I790292fc39f4588f87adc9d9241706817ae6baab
2011-11-14 14:09:05 -08:00
Danielle Millett
0cdbc3d6ad DO NOT MERGE cherry picking from MR0 cl 148223
Showing a congratulations screen after choosing face unlock backup lock

Once a backup lock has been chosen, it sends an intent to show a
congratulations screen.  The moveTempGallery function has been moved
inside this new activity so it is no longer needed in LockPatternUtils.

Change-Id: I66868e6e3391b8b740f618fe633047ce388f55ca
2011-11-14 16:42:31 -05:00
Adam Cohen
8e2e572224 Fix uncaught exception in WindowManager#setWallpaperOffsets (issue 5613241)
Change-Id: I4646095f4cde9514425be8ab2dbf805d9788aa5c
2011-11-14 13:28:50 -08:00
Eric Fischer
9645720556 Import revised translations. DO NOT MERGE
Change-Id: I287b6b70df6795513fc1fc98d2fddaf310042e98
2011-11-14 13:24:28 -08:00
Daisuke Miyakawa
19352e0852 Allow ContactsProvider to remove dulicates
Bug: 5484956
Change-Id: Ie88af0c3d21919ca201f4fcdd46ca09e9f8d94c0
2011-11-14 13:16:07 -08:00
Hong Teng
7eb5319703 Fix for issue 5309336
-add videoeditor maximum prefetch YUV frames in media_profiles.xml to limit the total memory usage.

Change-Id: I41ffbc192fcce4c7635e5b0a1f2835852e5ee509
2011-11-14 13:02:59 -08:00
Jean-Michel Trivi
258576a82c Merge "Fix 5607938 AudioFocusDeathHandler leaks GREF" into ics-mr1 2011-11-14 12:31:10 -08:00
Dave Burke
9d66da8ae6 Merge "Revert "Discard framebuffer rendering queues when discarding layers"" into ics-mr1 2011-11-14 12:25:53 -08:00
John Wang
72a31ab98f Merge "[maguro] Fix STK issues" into ics-mr1 2011-11-14 12:10:16 -08:00
Mathias Agopian
c93a151fde Merge "Define, document, and test the behavior of very large SurfaceTextures" into ics-mr1 2011-11-14 11:49:42 -08:00
Dave Burke
7077506f99 Revert "Discard framebuffer rendering queues when discarding layers"
This reverts commit da96f8ac2c1c35a54f3f36e6d776cb386a251d03.
2011-11-14 11:39:30 -08:00
dujin.cha
e81932e92a [maguro] Fix STK issues
1. Fix Bug 5574160 (Abnormal Setup menu)
2. Fix Bug 5558273 (GetInkey issue)
3. Fix BUg 5558612 (No default alpha id)
4. Fix Vodafone UK ALS issue.

Bug : 5574160, 5558273, 5558612

Change-Id: Ief74d0e4f4f28dff7a435e9dab1fab1ca1d9bfaf
Signed-off-by: dujin.cha <dujin.cha@samsung.com>
2011-11-14 10:46:19 -08:00
Alex Sakhartchouk
cde433c5f7 Merge "Fixing a race condition in RSSurfaceView. Bug 5601083 When destroy is called shortly after creation, RS tries to set a surface on a partially destroyed context." into ics-mr1 2011-11-14 10:35:08 -08:00
Eric Laurent
030bb99814 Merge "audioflinger: fix noise when skipping to next song" into ics-mr1 2011-11-14 08:38:05 -08:00
Mathias Agopian
2858749704 Merge "Discard framebuffer rendering queues when discarding layers Bug #5581817" into ics-mr1 2011-11-14 00:52:09 -08:00
Scott Main
2af9f21c66 am 19b1c12b: Merge "Docs: update state list drawable with state_activated and revise selected/focused" into ics-mr0
* commit '19b1c12b5eb3417e9f56810cc08ee1e560da0a99':
  Docs: update state list drawable with state_activated and revise selected/focused
2011-11-11 19:22:07 -08:00
Jeff Brown
6f0464e79d am f1f0c873: Fix bug in TextLayoutCacheKey handling embedded nulls.
* commit 'f1f0c873b1d119a19342cb67ca77b59607951659':
  Fix bug in TextLayoutCacheKey handling embedded nulls.
2011-11-11 19:22:04 -08:00
Adam Powell
771d0c99f6 am 6200a4b7: Merge "DO NOT MERGE Cherry pick from ics-mr1 - Bug 5275928 - Don\'t try to open an overflow menu under invalid circumstances." into ics-mr0
* commit '6200a4b7eb07507055af93ec1a054640a39b9751':
  DO NOT MERGE Cherry pick from ics-mr1 - Bug 5275928 - Don't try to open an overflow menu under invalid circumstances.
2011-11-11 19:22:02 -08:00
Robert Ly
632f072b22 am 5f8b7269: docs: fix typo
* commit '5f8b7269d66acb45dcb74a1eb38102cb1d1431df':
  docs: fix typo
2011-11-11 19:22:01 -08:00
Robert Ly
83c16e2577 am 5ad6f646: Merge "docs: ndk r7 rel notes" into ics-mr0
* commit '5ad6f646fbe692b94961df6472bec2b8bd1ea382':
  docs: ndk r7 rel notes
2011-11-11 19:17:23 -08:00
Mathias Agopian
b89d88f531 Define, document, and test the behavior of very large SurfaceTextures
updateTexImage() now throws a runtime exception when its native
counterpart fails

Bug: 5506633

Change-Id: I151a6f685d465966e7df4df624412ab2da62e95f
2011-11-11 18:44:35 -08:00
Adam Powell
a8743f152a Fix bug 5425280 - Two ActionBar icons show up
Change-Id: Ic82f8ce648f9314a0800eeff326df7d8dfe5027b
2011-11-11 18:35:53 -08:00
Scott Main
19b1c12b5e Merge "Docs: update state list drawable with state_activated and revise selected/focused" into ics-mr0 2011-11-11 17:17:23 -08:00
Eric Laurent
f9c361dec4 audioflinger: fix noise when skipping to next song
When audio effects are enabled, a noise can be heard at the
beginning of the new song when skipping to next song in music app.

This is because some effects (especially virtualizer) have a tail.
This tail was not played when previous song was stopped because effects were
not processed when no tracks were present on a given session. This is to
reduce CPU load when effects are enabled but no audio is playing.
The tail was then rendered when the new song was started.

Added a delay before stopping effect process after all tracks have been removed from a session.

Issue 5584880.

Change-Id: I815e0f7441f9302e8dfe413dc269a94e4cc6fd95
2011-11-11 16:33:24 -08:00
Christopher Tate
c51bb4d394 Merge "XML parsing optimizations" into ics-mr1 2011-11-11 16:19:29 -08:00
Jean-Michel Trivi
de1f065be1 Fix 5607938 AudioFocusDeathHandler leaks GREF
The AudioFocus death handler was correctly updating the audio
 focus stack when an audio focus client dies, but the death handler
 was leaking GREF if unlinkToDeath() is not called.
The fix consists in making sure unlinkToDeath() is always called
 by calling it in its finalizer.

Change-Id: I0c5343b4986ab582cadbf171fc53816952dc16f5
2011-11-11 16:13:48 -08:00