1. Also notify input is restricted or not when IKeyguardStateCallback callback is added.
When first Keyguard is showing after boot, the mInputRestricted is not updated. So,
inKeyguardRestrictedInputMode still returns false, although device is locked.
2. If mShowing remains false during setup time of KeyguardViewMediator, mInputRestricted
is not updated. This is because updateInputRestrictedLocked is called only if showing
value is changed during setup time.
For this reason, when device is not provisioned, inKeyguardRestrictedInputMode returns
false, and device does not restrict key.
3. If one of callbacks causes RemoteException, the other callbacks are not called.
This is because catching RemoteException breaks for-loop.
Change-Id: I0281405127bcc75285b908d01485da3ac9b40b52
Signed-off-by: Dooyoung Hwang <dooyoung.hwang@lge.com>
It was possible for a binderDied() call to occur while the death
recipient list containing the object was being iterated, in which
case we could invalidate an object reference out from under the
iteration, causing a VM abort. We now interlock the binderDied()
deref operation with the list's locking semantics to prevent this.
Bug 15831054
(cherry picked from commit 090c08ff2a7525c830b4edfd1a79aa8ee3893c60)
Change-Id: If0027d3ac4da1153284a425dd9b2819a203481ab
The comparator used variable "when" in IncreasingTimeOrder class.
variable "when" means "elapsed time" or "real time"(RTC) and these types have different unit of time.
so, I recommend that you use a "whenElapsed" which has the equal unit of time as its default value.
Change-Id: I248863ef8a5c49cc7114cb2965f3d6b78f4faa59
Signed-off-by: Jinho Park <jinho.park@lge.com>
Passing null to XmlPullParser.setInput forces it to do additional
work, which can be easily avoided if we know the charset beforehand.
bug: b/20849543
(cherry picked from commit 9e9e2e73c6ec7bece20268196dc89ad0c8bafad4)
Change-Id: Iaff97be9df2d0f99d7af8f19f65934439c9658e2
We don't dex2oat during application moves, so we must scan
the package again scanPackageDirtyLI to deduce its ABI.
This is unnecessary (since a move cannot change ABIs), but we
need some additional refactoring to avoid a second scan.
bug: 21337469
(cherry picked from commit cd251fa382e887f59c278d4d7cd0a858812c6114)
Change-Id: Id1ed3bdfabb41e05e6a2f7efbd05d2103a67c663
Allows us to proceed without crashing the system process. Also,
complete an incomplete error message. Follow up comments from
change b904863476991d8540d37d5.
bug: 21144503
(cherry picked from commit c52ae28006605fb2da38b305b60b9bb419aa2f80)
Change-Id: I47b8762449714162fcd5c16eba6fcc146b93120b
This requires a minor refactor to extract the ABI detection logic
out of scanPackageDirtyLI.
Note that there's a minor regression here : we ignore the
cpuAbiOverride from the package settings when calculating the
CPU ABI. This is OK (and possibly better behaviour) because this
is only a debug only option (for adb install) AND because the instructions
require users to specify the abi override on every adb install
invocation. Furthermore, the behaviour when an ADB installed app
(with an override) is auto-updated is more consistent.
bug: 21144503
(cherry picked from commit b904863476991d8540d37d542c0a49b78deab680)
Change-Id: I1eb88b808fd2e90e14c32322131659220aafdb7a
Currently installation fails, if an app is located on SD card (inside ASEC).
If an app is located inside ASEC, dexopt output should go to
/data/dalvik-cache. dexopt also needs to be performed at a later stage,
because the name of the oat file contains the absolute path to the dex file.
Bug: 20452651
Bug: 21360107
(cherry picked from commit 94056d1cb8183bde3e942336735b289b9654deb1)
Change-Id: Id1ced7159e5af9c05be0b637437b3b260e859c1d
Adapt to Jack compilation specifics.
Fix bad import in VideoDumpActivity.
The extra semicolumn is ignored by javac because of
https://bugs.openjdk.java.net/browse/JDK-8027682 but is not
permitted by ecj or Jack.
This includes cherry-picks of the following changes:
248ef6f9c414db26fd1bc7ec3d4ee4f3b87d54cf
705555dc468e46560d02db102dfcedc1e5c70d9e
f50a51fb4c8d5ca973ce910a21bddf9f8466cb51
bf5ad8d9943c0e1b0b3f1b4524c277f369065d08
Change-Id: Ifbe063e3822a7d63b1681921b9788cfca898ba64
Crypto primitives' getSpi has a side-effect which modifies the state
of the primitive: it selects an SPI implementation if it hasn't been
selected yet (e.g., Cipher.getInstance("AES") doesn't select an SPI
implementation until Cipher.init). The new method getCurrentSpi has
no side-effects: it simply returns null if no SPI implementation is
selected. The switch to getCurrentSpi lets us avoid side-effects and
throw a more pertinent exception when no SPI is yet selected.
Bug: 18088752
Change-Id: I6d62eb67f904a15782673d16bcdae240cdc8f979
Case 1 (name == null):
Switch user from guest to owner. All processes of guest
will be killed, it will not include processes which singleton
components live in, but singleton provider records are still
collected and removed.
When the user switch is complete and the process of removed
singleton provider is still alive, there is someone access
the provider, it will create a new ContentProviderRecord and
wait but no one will notify it because the provider process
is alive with different ContentProviderRecord.
Then the access cannot get response unless the process of target
provider is died and restarted.
Case 2 (name != null):
Switch to another non-guest user, launch an application which
contains singleton provider. Go to Settings to force-stop the
package then switch back to owner user. Launch an application
which will access the singleton provider. It will also cannot
get response that similar as case 1.
Solution:
Only collect singleton provider if target user is all or owner.
Change-Id: Ic6828da66645172d1378cfb1f66d092df5966516
Rename confusingly named methods, add userID arguments to all methods
that operate on user state and delete methods that have been replaced by
the onUser* methods.
Some of the old methods have been kept in KeyStore.java in order to ease
the transition of various system packages to the new methods.
Change-Id: Ic271689d62c36d255c5adee26c7abc2e7ed24df5
Adds in flag CREATE_FLAG_WAIT_FOR_ATTACH with value 0x0008 to the RenderScript API
to be passed down to the C++ implementation to tell it to wait for a debugger to be
attached before executing the kernel.
Change-Id: Ibc4e903efbed1b1fb14cf378d1a8517d5c8d1f26
Signed-off-by: Stephen McGroarty <stephen@codeplay.com>
bug 20822382
This corrects a copy&paste error placing F16 into F32.
Fixes an error disallowing vectors of fp16 types.
Change-Id: I34be1aa9a323d61a7121581ab9599d2c2d32dd42
e.g. ContentResolver.getType will call
ActivityManagerService.getProviderMimeType
that will not have connection but increase
externalProcessNoHandleCount.
Change-Id: I649c0b2390a749c77c6be5e7dfadc1acb689ec4c