Commit Graph

44050 Commits

Author SHA1 Message Date
Alan Viverette
6af08c6b76 Merge "Fix for infinite loop in RemoteViewsAdapter" 2015-04-28 17:10:41 +00:00
Taiju Tsuiki
ecd2184873 Fix NPE in Bundle#hasFileDescriptor on null-valued SparseArray
Add a null check for each values of SparseArray in Bundle#hasFileDescriptor
to avoid NullPointerException.

Change-Id: I43ecc01f2759ccbe85b902fa118d55cb74ebf38b
2015-04-28 09:30:19 +01:00
Taiju Tsuiki
e58c7858a3 Fix NullPointerException in Bundle#hasFileDescriptors
Add null check for array elements in Bundle#hasFileDescriptors to avoid NPE on
null valued array.

Change-Id: Ic6ef8864ca6add023c7a69ba3c9474b0f6291723
2015-04-28 09:27:40 +01:00
Andreas Gampe
c29791d56a Merge "Frameworks/base: Add debug.gencfi property" 2015-04-27 15:06:48 +00:00
Narayan Kamath
4356c95354 Fix incorrect javadoc for Uri.getQueryParameter.
This first went out with Jelly Bean and not ICS.

bug: https://code.google.com/p/android/issues/detail?id=61651
Change-Id: I26f6b18593fe089bd3a52ec1d159494923bcbad1
2015-04-27 10:42:41 +00:00
Andreas Gampe
a876b35d48 Frameworks/base: Add debug.gencfi property
Add the debug.gencfi system property that forces generation of
CFI data.

Change-Id: Ida66f8c1567634d05cfdbba1a982be3684e94369
2015-04-24 16:31:41 -07:00
Wale Ogunwale
1d646128b2 Revert "[ActivityManager] Improve multi-thread access the same provider"
This reverts commit 57307b21cb.

Bug: 20091132
2015-04-24 14:45:14 -07:00
Wale Ogunwale
67fe0a450c Revert "Clean-up state if we have an exception when acquiring provider"
This reverts commit 73e239bdc9.

Bug: 20091132
2015-04-24 14:44:54 -07:00
Andreas Gampe
31fb202e6f Merge "Frameworks/base: Compile-time optimize SQLiteConnection" 2015-04-21 23:31:51 +00:00
Mathieu Chartier
ba6783b69a Merge "Update getExportedPropertyMethods to new reflection API" 2015-04-21 23:03:35 +00:00
Andreas Gampe
4f47b40e05 Frameworks/base: Compile-time optimize SQLiteConnection
Do not cache compiled regular expression and date formatter. Both
cannot be compile-time created, are expensive at preloading time,
and only used in the rare case of dumping the connection (mainly
on errors).

Bug: 19498458
Bug: 19542228
Change-Id: Ia38491a3f852ccf699b815ff05289b338e932f2a
2015-04-21 16:01:00 -07:00
Mathieu Chartier
a8a6516f62 Update getExportedPropertyMethods to new reflection API
Bug: 19264997

Change-Id: Ife79c469fdb09f30e3aefcfc3e0ce5ed32303fce
2015-04-21 11:52:10 -07:00
Martijn Coenen
e386f7f510 Merge "Expose peer LLCP version in NDEF callbacks." 2015-04-17 07:02:59 +00:00
Chad Brubaker
e5e49a175c Merge "Support KM_LONG_REP" 2015-04-16 21:56:13 +00:00
Chad Brubaker
b543b39354 Support KM_LONG_REP
Change-Id: I37814bcb03dc8918e27226ec43230fa4218723d0
2015-04-16 14:39:51 -07:00
Alex Klyubin
499126c433 Merge "Add Keymaster KM_ORIGIN_UNKNOWN constant." 2015-04-16 19:50:12 +00:00
Alex Klyubin
37d81d035c Add IV-related Keymaster error codes.
Bug: 18088752
Change-Id: I08daede713f945ad7dd0b21cc41ee12c15d94bad
2015-04-15 17:18:19 -07:00
Martijn Coenen
fd70bb1367 Expose peer LLCP version in NDEF callbacks.
Change-Id: I98b9a9764b66345f842c1f845c8a386161d965f5
2015-04-15 12:33:37 +02:00
Martijn Coenen
6a47a86112 Merge "Add getPrefixAids()." 2015-04-15 08:00:13 +00:00
Martijn Coenen
ed3a29ea08 Add getPrefixAids().
Bug: 19144664
Change-Id: Ia49550102ccf1d40cd3f2bf7e5bd64d444a2e8a3
2015-04-15 09:48:57 +02:00
Hiroshi Yamauchi
d8001676ea Fix javadoc error in Debug.getRuntimeStats().
Bug: 19825248
Change-Id: Id7131732d30f01c3edd01c6d4c7c391095ffd054
2015-04-14 16:08:49 -07:00
Alex Klyubin
45d27836bd Add Keymaster KM_ORIGIN_UNKNOWN constant.
This tracks d359b044830b292f492f8a8df5471f869e358399 from
hardware/libhardware.

Bug: 18088752
Change-Id: I9a7bd8bdee51c18ae0427eff4efe036213d2b175
2015-04-14 10:52:34 -07:00
Hiroshi Yamauchi
8b5a293d09 Add Debug.getRuntimeStat().
Export runtime stats (currently GC stats) through this method.

Bug: 19825248
Change-Id: I147a0e9bc6bdfe4dc29d74e44f0af6349c51d9f8
2015-04-14 10:33:10 -07:00
Erik Kline
3312c6b9f3 Merge "Add android.net.IpPrefix#contains()" 2015-04-14 07:58:33 +00:00
Erik Kline
acc8c09d3a Add android.net.IpPrefix#contains()
This was originally to avoid RuntimeException in RouteInfo#matches():
    When an IPv6 prefix with a length greater than the max permitted
    for IPv4 is matched against an Inet4Address, the call to
    NetworkUtils throws RuntimeException.

Change-Id: I92e2bd19a4e7d656cf682fd27678da07e211850d
2015-04-14 16:19:11 +09:00
Alex Klyubin
d1af38a478 Merge "Use JCA names for block modes, paddings, and digests." 2015-04-13 17:01:30 +00:00
Alex Klyubin
5927c9f1b1 Use JCA names for block modes, paddings, and digests.
This replaces int-based enums from KeyStoreKeyConstraints with
String values commonly used in JCA API.

As part of under the hood refactoring:
* KeyStoreKeyCharacteristics and KeyStoreKeyConstraints have been
  merged into KeyStoreKeyProperties.
* KeymasterUtils methods operating on KeymasterArguments and
  KeymasterCharacteristics have been moved to their respective
  classes.

Bug: 18088752
Change-Id: I9c8b984cb3c28184adb617e34d87f2837bd1d3a1
2015-04-13 09:59:04 -07:00
Wale Ogunwale
8f0e0c1f3d Merge "Clean-up state if we have an exception when acquiring provider" 2015-04-13 04:25:29 +00:00
Chad Brubaker
59f977c698 Make several key crypto parameters repeatable
Bug: 19509156
Change-Id: Ic584d8a6bf5601f9754563b67b3cc6b3ca6b5ff9
2015-04-10 12:20:04 -06:00
Wale Ogunwale
73e239bdc9 Clean-up state if we have an exception when acquiring provider
We can get a number of exceptions (e.g. SecurityException) when
a process is acquiring a provider. We need to clean-up correctly
so that other threads that try to acquire the provider the progress.

Bug: 20122809
Change-Id: Icac1d391df7e8c24198be89035b1c5a23da834cf
2015-04-10 09:32:26 -07:00
Alex Klyubin
55f7c2770f Track more changes to keymaster_defs.h
KeyStoreTest needed to be adjusted because OCB is no longer supported.

Bug: 18088752
Change-Id: I7594daaa5e97423d34726b07cc79e3ee28418d95
2015-04-10 08:58:38 -07:00
Alex Klyubin
862e6c7814 Track recent keymaster_defs.h changes.
Bug: 18088752
Change-Id: If47bb7cc7a385941db9f12d478676594e9bc9d86
2015-04-09 16:58:58 -07:00
louis_chang
3d86b88fa7 [ActivityManager] Avoid NullPointerException if no
crash info

Symptom:
This issue happens because the ANR process got killed
(because it crashed) before the ANR dialog dismissed.
In that case, the process record is marked as crashed
(ProcessRecord.crashing = true). When the ANR dialog
dismissed by user, it will cause NullPointerException
when writeToParcel while performing IPC because there
is no crash info (ApplicationErrorReport.crashInfo = null)

Solution:
Check crashinfo before access it

Change-Id: I2995de57684c1e13aab8297f5eea1e82ca3b7ad8
2015-04-08 18:04:11 +08:00
Romain Guy
80e455e325 Merge "Prevent possible memory leak in SpanSet" 2015-04-08 06:56:26 +00:00
Adam Powell
7a3c8c70a6 Merge "Fixed memory leak in ExtractEditLayout finish()" 2015-04-07 20:56:49 +00:00
Adam Powell
8391e03b7e Merge "ProgressBar: Fix error of process bar cannot update on some condition." 2015-04-07 20:56:36 +00:00
Tim Murray
5352411a8c Merge "Move cache dir to its own class." 2015-04-07 20:34:21 +00:00
Tim Murray
e1e6c66198 Move cache dir to its own class.
This prevents us from loading the RS static initializer all the time.

Change-Id: I8cea7540e50251aba8c2f199f06f344f991e7d7f
2015-04-07 13:24:14 -07:00
Romain Guy
b3a9bc038d Prevent possible memory leak in SpanSet
If SpanSet.init() is called several times in a row with different
values, it is possible to change "numberOfSpans" in a way that
will prevent SpanSet.recycle() from nulling out all the spans.

This can lead to memory leaks of large objects through spans
references. User @piwai reported this leak:

     com.squareup.marketfont.MarketSpan
     `-[1] of array android.text.style.CharacterStyle[]
       `-spans of object android.text.SpanSet
         `-mCharacterStyleSpanSet of object android.text.TextLine
           `-[1] of array android.text.TextLine[]
             `-sCached of class android.text.TextLine

The MarketSpan instance is kept alive through a recycled TextLine
which itself contains a SpanSet.

Change-Id: Idfb2233ca16895dbe735c312662eaf0b4a2ecd65
2015-04-07 11:07:05 -07:00
Alex Klyubin
558184f52f Merge "Make the new AndroidKeyStore API conformant." 2015-04-07 17:39:08 +00:00
Dmitriy Ivanov
d95e58cb60 Merge "Load libraries directly from apk" 2015-04-07 17:28:15 +00:00
Dmitriy Ivanov
dec4688f40 Load libraries directly from apk
Introduced new 'extractNativeLibs' attribute to manifest/application.
 Setting it to false prevents installer from extracting library from apk.

 The default value for extractNativeLibs is true.

Bug: 8076853
(cherry picked from commit ff193d642e)
Change-Id: I1aa2c039bb2a590ae72f256acc9ba5401c2c59b1
2015-04-07 17:25:23 +00:00
Alex Klyubin
c46e9e7da4 Make the new AndroidKeyStore API conformant.
This makes the new AndroidKeyStore API conform with the latest
Keymaster API changes as well as the latest Android framework API
design guidelines.

Keymaster changes:
* Multiple paddings, block modes, and digests can be set on a key.
* "max uses per boot" and "min seconds between use" restrictions will
  not be exposed in the framework API.
* Padding scheme ZERO will not be exposed.

Changes due to Android framework design guidelines:
* Sets of enum values have been replaced with bitsets represented as
  ints.
* Integer has been replaced with int, with null being represented
  with a special value (e.g., -1 or 0) where possible.

Bug: 18088752
Change-Id: Ib21739aa9b42d48895cb7a681e836a5c6d972ac6
2015-04-07 09:18:00 -07:00
Fyodor Kupolov
3d8b7f4d50 Merge "Support for storing OAT files in app directory" 2015-04-02 23:11:11 +00:00
Elliott Hughes
64c8a07345 Merge "Early return in RemoteViewsAdapter is too late" 2015-04-01 23:34:25 +00:00
Alex Klyubin
3f24a1d94a Cleanse HTTP, HTTPS, and FTP URLs in Uri.toSafeString.
This makes the hidden API android.net.Uri.toSafeString omit most parts
of HTTP, HTTPS, and FTP URLs to avoid leaking anything unsafe. Only
the host and port are retained for these URLs.

Bug: 19215516
Change-Id: I2e9e33d9afaa9de5dd07a40532d56f0a2179f62a
2015-04-01 13:09:22 -07:00
riddle_hsu
57307b21cb [ActivityManager] Improve multi-thread access the same provider
Application may use many threads to load data from provider.
If the target provider needs to start process, each access
will occupy one binder thread of system server until the
provider process started and published.

Sometimes application uses more than 16 threads to access
the same provider, and the provider process needs a little
long time to start, then all binder threads of system server
are waiting. But when the provider is ready, it is unable to
publish to notify those waiting threads because no availabe
binder thread to use. And device will become almost hang.

Improvement:
If there is already a thread acquiring provider, let other threads
(which try to acquire the same provider) wait the result of the
first one. That reduces IPC to save binder thread of system server.

Remove calling removeContentProvider in installProvider because
we have ensured only get one provider holder for the same provider,
the original race that gets a new useless holder will not happen.

Change-Id: I521f2603db8ced56912f5dc54342a70451e68381
2015-04-01 15:06:18 +08:00
Alex Klyubin
c0eb55ccc7 UNSUPPORTED_TAG_LENGTH -> UNSUPPORTED_MAC_LENGTH
This is to follow naming from keymaster_defs.h

Bug: 18088752
Change-Id: If2bc91dde54f1cefcd4325d1f62d0e0b77fc5d59
2015-03-31 17:16:31 -07:00
Chad Brubaker
5491ea9e5b Merge "Include operation handle in OperationResult" 2015-03-31 17:49:16 +00:00
Olawale Ogunwale
4af5bd7cda Merge "Add ProcessInfoService to activity manager." 2015-03-30 22:00:12 +00:00