20556 Commits

Author SHA1 Message Date
Matthew Williams
34b700a7c2 Sync extras bundle comparison can throw NPE
am: c0f39c1ece

* commit 'c0f39c1ece72a05c796f7ba30b7a2b5b580d5025':
  Sync extras bundle comparison can throw NPE
2015-11-13 01:41:59 +00:00
Matthew Williams
c0f39c1ece Sync extras bundle comparison can throw NPE
BUG: 23591205
Change-Id: Ic6404c0befe70c34b078e0eae6a627826173d82c
(cherry picked from commit 9ad2c8403354a985258c098681067e74b9e2f638)
2015-11-11 14:34:04 +00:00
Paul Jensen
635f871132 am a9e98343: Merge "Fix NOT_RESTRICTED network capability and enforce it." into lmp-dev
* commit 'a9e98343146244b71e236d82c95a8d0fa30a41c1':
  Fix NOT_RESTRICTED network capability and enforce it.
2015-09-23 11:06:27 +00:00
Paul Jensen
a12044215b Fix NOT_RESTRICTED network capability and enforce it.
With this change:
1. NOT_RESTRICTED should be removed from NetworkRequests that bring up
   special restricted carrier networks (e.g. IMS, FOTA).
2. NetworkRequests without NOT_RESTRICTED require CONNECTIVITY_INTERNAL
   permission to register
3. Binding sockets to networks without NOT_RESTRICTED requires
   CONNECTIVITY_INTERNAL permission

Bug:21637535
Change-Id: I5991d39facaa6b690e969fe15dcbeec52e918321
(cherry picked from commit 487ffe7d3d84bf65212158f7098e8a84b5b55e09)
2015-08-28 12:48:11 -04:00
Wale Ogunwale
ec425a19f9 am df9948d8: Merge "Prevent system uid component from running in an app process" into lmp-dev
* commit 'df9948d81232a03271113c16bee6f3ab6b826bad':
  Prevent system uid component from running in an app process
2015-07-01 16:18:42 +00:00
Wale Ogunwale
5a487696e2 Prevent system uid component from running in an app process
Bug: 21669445
Change-Id: I11d0bc5301d7e2a64972221f54f3cbd611f8e404
(cherry picked from commit 44368567f840e3469b5fd2c9399ed444b6f46ebf)
2015-06-24 22:01:15 +00:00
Svetoslav
18fb1c92d8 am bf0652ee: DO NOT MERGE Don\'t take flags when creating app widget config activity.
* commit 'bf0652eeea280bb1d687fe2fc3e869e0f6e9a541':
  DO NOT MERGE Don't take flags when creating app widget config activity.
2015-06-01 23:02:37 +00:00
Svetoslav
bf0652eeea DO NOT MERGE Don't take flags when creating app widget config activity.
bug:19618745

Change-Id: Ib0e421454d343e6db55d5538f1d55ac22a3dd722
2015-06-01 12:55:38 -07:00
Wale Ogunwale
523a19bf3d am c9a0c0b9: Lockdown AM.getRunningAppProcesses API with permission.REAL_GET_TASKS
* commit 'c9a0c0b90773fded6c251646300231f67c891b78':
  Lockdown AM.getRunningAppProcesses API with permission.REAL_GET_TASKS
2015-05-27 04:50:11 +00:00
Wale Ogunwale
c9a0c0b907 Lockdown AM.getRunningAppProcesses API with permission.REAL_GET_TASKS
* Applications must now have ...permission.REAL_GET_TASKS to
be able to get process information for all applications.
* Only the process information for the calling application will be
returned if the app doesn't have the permission.
* Privilages apps will temporarily be able to get process information
for all applications if they don't have the new permission, but have
deprecated ...permission.GET_TASKS.

Bug: 20034603
Change-Id: I67ae9491f65d2280adb6a81593693d499714a216
(cherry picked from commit 9dbaa54f6834e013a63f18bd51ace554de811d80)
2015-05-26 17:49:04 +00:00
Michael Runge
96f47f5bf3 am b0197033: Increase timeout when uncrypting OTA
* commit 'b019703395ae0304ddd10054843c64db87229d23':
  Increase timeout when uncrypting OTA
2015-03-26 03:57:33 +00:00
Michael Runge
b019703395 Increase timeout when uncrypting OTA
Larger OTAs (750 MB tested) are taking 3-4 minutes
to write, due to the O_SYNC needed to ensure that
the data is actually committed to disk prior to
reboot.

Bug: 18750317
Change-Id: Idfab3ffd0276df4548f69a09c72ad6f4a344b6e6
(cherry picked from commit 01c06dfb076b71cb72c4bff9175bec9d59d2efde)
2015-03-26 03:01:02 +00:00
Craig Mautner
83a63bac5d am 8fa394fa: Merge "Do not make ActivityContainer available to apps. DO NOT MERGE" into lmp-dev
* commit '8fa394fa8c4eb3ca832dac36baf5645a40d449f1':
  Do not make ActivityContainer available to apps. DO NOT MERGE
2015-03-04 16:15:35 +00:00
Craig Mautner
40f616b1f6 Do not make ActivityContainer available to apps. DO NOT MERGE
A security leak was discovered whereby a malicious app could get the
IActivityContainer object from one app and use it to inject events
into another app. This fix removes the availability of the
IActivityContainer and replaces its one use with a method for
returning the information the IActivityContainer was used for.

Fixes bug 19394591.

Change-Id: Ib3cec25b25130cd8e098892c057742cfd575cfdd
2015-02-19 09:44:53 -08:00
Christopher Tate
be3206ecdc am 5c3e277f: Fix bad alarm delivery
* commit '5c3e277fb42bd799287936c5aee0d30fbcc7e65c':
  Fix bad alarm delivery
2014-12-16 21:04:56 +00:00
Christopher Tate
5c3e277fb4 Fix bad alarm delivery
The man bent over his hourglass,
A programmer of sorts. The day was green.

They said, "You have a blue hourglass,
You do not fire alarms when they're asked."

The man replied, "Alarms as they're asked
are changed within the blue hourglass."

And they said then, "But fire, you must
Alarms beyond us, yet themselves,

Alarms within the blue hourglass
That trigger exactly when they're asked."

 ---

Fix the delivery-fuzzing semantics that had been introduced in
81f9882b5aadd6a2289c9f521a06a7af5f35ebf0.  That patch turned out
to be incomplete; in particular, alarms scheduled later might require
the validity of an already-scheduled kernel alarm even if they did
not affect the head alarm batch directly, and this was not being
addressed.  For now, roll back the fuzzed delivery logic entirely.
(This is not a full revert because that patch also caused exact alarms
to be considered standalone for batching purposes, and we need to
preserve that new policy.)

Bug 18726690
Bug 18765436

This is a 'git revert' of 81f9882b5aadd6a2289c9f521a06a7af5f35ebf0
*except* that this CL preserves the "exact alarms are treated as
standalone" portion of the original patch.

Change-Id: I54c763775877de5b6eeb5617544aa6100bb17526
2014-12-16 12:48:47 -08:00
Mark Renouf
d3adc51a1b If no display settings are matched, return the first one. DO NOT MERGE
Language changes will prevent previously saved display settings from
being loaded. This provides a fallback in the event a single entry exists
but does not match the current (localized) name of the Built-In Display.

BUG: 18130296
BUG: 18190800
Change-Id: Ibeff56045fc5713b9f79707dfb92bafc9fadd84f
(cherry picked from commit cf0f740e39f79da3fc8367c61ed473273248e8c1)
2014-12-12 18:24:58 +00:00
Bart Sears
08c7233451 Merge "Tune delivery and batching of alarms" into lmp-dev
automerge: 3ec6a91

* commit '3ec6a91204ffac6e81eaad7ca29e817e9502f856':
  Tune delivery and batching of alarms
2014-12-12 13:15:38 +00:00
Christopher Tate
a91ef1ec04 Properly recognize repeating wakeup alarms
automerge: 8965a8d

* commit '8965a8da5513cf31a313ecdac3506718c2813932':
  Properly recognize repeating wakeup alarms
2014-12-12 13:14:30 +00:00
Bart Sears
3ec6a91204 Merge "Tune delivery and batching of alarms" into lmp-dev 2014-12-12 01:52:31 +00:00
Christopher Tate
b62aa5530e Tune delivery and batching of alarms
cherry-pick from lmp-mr1-dev

* Inexact alarms no longer coalesce with exact alarms.  The motivation here
is that exact alarms are far more likely to be wall-clock aligned, and in
general pulling all alarms toward wall-clock alignment is a bad idea.

* Wakeup times are now fuzzed within the target batch's allowed window
rather than being hard pinned at the start of the window.

Bug 18631821

Change-Id: Iefaf34eee3f2a6546abefc27e177ee2fdcff935f
(cherry picked from commit 81f9882b5aadd6a2289c9f521a06a7af5f35ebf0)
2014-12-11 23:23:17 +00:00
Christopher Tate
8965a8da55 Properly recognize repeating wakeup alarms
cherry-pick from lmp-mr1-dev

The code in place was inappropriately treating all recurring alarms
as non-wakeup for purposes of deferral.  Worse, it was overriding the
"this deliverable batch of alarms includes a wakeup alarm" bookkeeping,
so could potentially cause inappropriate deferral of even standalone
wakeup alarms.

Bug 18591317

Change-Id: I2a62ed4badcaeb549c1ac4f086014aa829e45427
(cherry picked from commit 864d42eb96a9127b7d2f10ad11e709c24b4b4304)
2014-12-11 23:22:41 +00:00
Filip Gruszczynski
b8c0694ae8 Private Window flag to disable touch events in WallpaperService.
Change-Id: I18b46340f89cbea0b6daeb1efe9c31656f4e1a5d
2014-12-04 15:02:18 -08:00
Narayan Kamath
7377998dac resolved conflicts for merge of a42f7c1d to lmp-sprout-dev
Change-Id: I8e53c9d7e0014b4ffc621c561b737aa2dae5460c
2014-11-26 10:39:08 +00:00
Christopher Tate
7265abe77a Be increasingly aggressive about fstrim if it isn't being run
The current heuristics depend on devices being alive at midnight+ in
order to run periodic background fstrim operations.  This unfortunately
means that people who routinely turn their devices off overnight wind
up with their devices *never* running fstrim, and this causes major
performance and disk-life problems.

We now backstop this very-friendly schedule with an increasingly
aggressive one.  If the device goes a defined time without a background
fstrim, we then force the fstrim at the next reboot.  Once the
device hits the midnight+ idle fstrim request time, then we already
aggressively attempt to fstrim at the first available moment
thereafter, even if it's days/weeks later without a reboot.

'Available' here means charging + device idle.  If the device never
becomes idle then we can't do much without rendering an in-use device
inoperable for some number of minutes -- but we have no evidence of
devices ever failing to run fstrim due to this usage pattern.

A new Settings.Global element (type 'long', called
"fstrim_mandatory_interval") is the source of the backstop time.  If
this element is zero or negative, no mandatory boot-time fstrim will
ever be performed.  If the element is not supplied on a given device,
the default backstop is 3 days.

Adds a new string to display in the upgrading dialog when doing
the fstrim.  Note it is too late for this to be localized, but since
this operation can take a long time it is probably better to have
it show *something* even if not localized, rather than just sit there.

Bug 18486922

Change-Id: I5b265ca0a65570fb8931251aa1ac37b530635a2c
2014-11-25 16:35:06 -08:00
padarshr
ddd9c2b97d am 1586b9c3: Start MountService before performBootDexOpt
* commit '1586b9c33ed8429b8dbbe15ce3316a2d1a73977a':
  Start MountService before performBootDexOpt
2014-11-25 23:43:19 +00:00
padarshr
1586b9c33e Start MountService before performBootDexOpt
This change is to start Mountservice before starting
performBootDexOpt, as in one case, in performBootDexOpt
when system upgrade happens, StorageManager will be started to
get the low threshold of DataDir. But, at this point, as
Mountservice is still not up, StorageManager will end up
having a null object of Mountservice.

Change-Id: If2b5e1b58e7d2a72c6313f196e98a68738295ec6
2014-11-25 15:30:02 -08:00
Jeff Brown
694c1d2b2d Merge "Support keeping activities resumed while dozing." into lmp-sprout-dev 2014-11-21 00:54:05 +00:00
Jeff Brown
fbe96706bb Support keeping activities resumed while dozing.
If the lock screen is not shown, then let activities keep running
while dozing.  This is important to support ambient mode on watches
since it allows the home app to keep running.

To make this possible, we need to inform the activity manager about
the exact wakefulness state, not just the overall boolean
interactive state.

Bug: 18284212
Change-Id: Ia35c99127ce51ffc178f3a2f51fca67d24061c71
2014-11-20 16:49:18 -08:00
Geoffrey Borggaard
90ed95faed am c3f5d718: Merge "Fix null handling in proxies." into lmp-dev
* commit 'c3f5d7183a21cb081bab1a6bca3fc115523e4e78':
  Fix null handling in proxies.
2014-11-20 20:59:00 +00:00
Geoffrey Borggaard
79adc958e5 Fix null handling in proxies.
ProxyInfo.getPacFileUrl() can not be null.  It will be equal to
Uri.EMPTY.  Checking for null was causing global proxies to never be
disabled.  Or more accurately, global proxies would be disabled, but
would reappear after a reboot.

ProxyInfo.getExclusionListByString() can be null.  If no
exclusion list was specified, the proxy settings would not be
successfully saved, they would disappear after reboot.

Bug: 18453223
Change-Id: I1c27e5dca5b9664bb7468ea909bff489fa110a07
2014-11-20 19:48:20 +00:00
Geoffrey Borggaard
db1e7fa097 Merge "Setting ADB_ENABLED may result in a SecurityException." into lmp-dev
automerge: e4590cf

* commit 'e4590cff5bbe581a1326abe68115b551585c43ff':
  Setting ADB_ENABLED may result in a SecurityException.
2014-11-19 20:50:12 +00:00
Geoffrey Borggaard
ba45b96a37 Setting ADB_ENABLED may result in a SecurityException.
If the restriction UserManager.DISALLOW_DEBUGGING_FEATURES is enforced,
then any attempt to set ADB_ENABLED will result in a SecurityException.
This can result in the device not being able to boot.
Bug: 18433477

Change-Id: I21e4b406ad0fa89b7d4b678eac1baf212a3c7acd
2014-11-19 14:26:08 -05:00
Prashant Malani
fb26a2c80b Merge "Don't animate screen brightness if there is a pending off transition" into lmp-sprout-dev 2014-11-15 09:46:33 +00:00
Craig Mautner
33d92c5678 Use package name as custom resolver process name
The process name was being assigned null. This meant that after the
process attached we weren't matching the name in
ActivityStackSupervisor.attachApplicationLocked(). That meant missing
the call to realStartActivityLocked() and then the resolver didn't
start until window manager timed out and resumeTopActivity was
called five seconds later.

Fixes bug 18301267.

Change-Id: If3721caeebb309c6054150b2f707e3d6e38a74d2
2014-11-14 15:09:54 +00:00
Prashant Malani
33538249f2 Don't animate screen brightness if there is a pending off transition
When the DisplayPowerRequest policy is POLICY_OFF, a screen state
transition animation to DISPLAY_OFF is intiated. However, in
updatePowerState() the screen brightness setting, based on the current
display state, is set to normal brightness and an animation is
triggered. This causes a transient flash on some devices, which are
transitioning from a dimmed screen to screen off.

This change checks for a pending screen off transition before
triggering a screen brightness animation, to prevent the flashes.

Bug: 18136235
Change-Id: I37f9fb28b3ec8a4fdbb45920c40d25ebd50c220b
2014-11-13 15:23:27 -08:00
Jeff Brown
24c1d664c4 Merge "Remove an unnecessary condition from previous change." into lmp-sprout-dev 2014-11-13 07:04:54 +00:00
Jeff Brown
a191aa99ab Remove an unnecessary condition from previous change.
Change-Id: Ib966fbb373294ad60caf7f1d9cbb7fafd05ded6b
2014-11-12 23:01:12 -08:00
Jeff Brown
1cbff0e310 Merge "Improve screen brightness boost behavior." into lmp-sprout-dev 2014-11-13 06:58:03 +00:00
Jeff Brown
7b5be5e2a7 Improve screen brightness boost behavior.
Wake-up when entering brightness boost mode, don't boost in ambient
mode since some display device drivers do strange things in that mode and
boost doesn't work.  Waking up feels more natural as well.

Don't flutter the power HAL's interactive mode bit simply due to changes
in display ready state since that may result in visible artifacts
such as display flashes.

Don't stop the auto-brightness sensor while temporarily boosted.

Don't prevent the display from entering the ready state while in brightness
boost since that would unnecessarily delay the transition from DOZING to AWAKE
until boost is finished.

Restart the user activity timeout when brightness boost ends and prevent
the display from dimming while boosted.

The pixel fairies basked in the sunlight.

Bug: 18262044
Bug: 18261782
Change-Id: I8c42a1e6091b0fe1253e90265ac248087ebc24e1
2014-11-12 18:49:36 -08:00
Jeff Sharkey
2e7000040e am d68b87cd: Recover apps with malformed certificates.
* commit 'd68b87cdd402d46013170d9316a31c82be4e4816':
  Recover apps with malformed certificates.
2014-11-12 22:20:46 +00:00
Jeff Sharkey
d68b87cdd4 Recover apps with malformed certificates.
There was a window of time in Lollipop where we persisted certificates
after they had passed through a decode/encode cycle.  The well-written
OpenSSL library was liberal when decoding (allowing slightly malformed
certs to be parsed), but then strict when encoding, giving us
different bytes for effectively the same certificate.

A related libcore change (0c990ab4a90b8a5492a67b2b728ac9a4a1ccfa1b)
now returns the original bytes verbatim, fixing both pre-Lollipop
installs and installs after that change.

This change recovers any apps that had been installed during the
window of time described above by doing a one-time check to see if
the certs are effectively equal.

Bug: 18228011
Change-Id: Ib82bd6db718d0490d7a26c9c1014b7c8457a7f2d
2014-11-12 13:16:06 -08:00
Andres Morales
f33d9db43a am b1477d11: Merge "[DO NOT MERGE] Increase min free levels for cached processes on 64bit" into lmp-dev
* commit 'b1477d11ca873db761dd378a5fea93b26d695f78':
  [DO NOT MERGE] Increase min free levels for cached processes on 64bit
2014-11-06 23:57:25 +00:00
Andres Morales
b1477d11ca Merge "[DO NOT MERGE] Increase min free levels for cached processes on 64bit" into lmp-dev 2014-11-06 23:51:00 +00:00
Andres Morales
423c44dc91 [DO NOT MERGE] Increase min free levels for cached processes on 64bit
Requires less memory pressure to start killing cached
processes.

Change-Id: Ia02f5aee115535badc900330b9361f0099203e4f
2014-11-06 15:44:02 -08:00
Jeff Hao
2a83226c75 Merge "Change boot screen title to "Android is starting" when not upgrading." into lmp-sprout-dev 2014-11-06 20:45:01 +00:00
Paul Lawrence
3bde026aeb am afb6b50e: Merge "DO NOT MERGE: Don\'t log passwords returned from vdc" into lmp-dev
* commit 'afb6b50e824153de5e2f0c4d49dd95fde79fa04f':
  DO NOT MERGE: Don't log passwords returned from vdc
2014-11-06 17:14:35 +00:00
Paul Lawrence
70c9a06af0 DO NOT MERGE: Don't log passwords returned from vdc
Turns off logging of responses from native daemon connector altogether.
Proper solution to follow in LMP MR1

Bug: 18260068
Change-Id: I25bc9cb61049a3efdd9a9cd11195864a04ef05fd
2014-11-05 19:07:57 -08:00
Jeff Hao
2e594cfe98 Change boot screen title to "Android is starting" when not upgrading.
Bug: 17565501
Bug: 18247218

(cherry picked from commit 9f60c08a446e38f9e2d5271546ef69ca5941eba9)

Change-Id: I1ec32b318b6221277fc3ffbc19966bf3330c2d93
2014-11-05 23:51:42 +00:00
Casey Burkhardt
2997285f36 Merge "Disable circular display mask with color inversion" into lmp-sprout-dev 2014-11-03 16:55:27 +00:00