If an application has native code (and primary abi)
include path to corresponding folder inside apk-file
to ldLibraryPath when constructing PathClassLoader
Bug: 21647354
Bug: 21667767
Bug: 21726698
Bug: 8076853
Change-Id: Ib0a2f01ee69019d3206a00c542bd7d0f58d0c481
(cherry picked from commit e56b3f63e8235ab45e081fc9d3476a3e5248ddde)
Calling println_native with the value of ASSERT will set the abort
message. Unfortunately, there are numerous cases where one thread aborts,
but before that thread can communicate with debuggerd, another thread
calls wtf, which overwrites the abort message from the original
failing thread.
Fix this by changing this to an error level log message.
Bug: 21490722
(cherry picked from commit 2d073ba83c570466a7f77d1cd9193ab4a60eaee4)
Change-Id: Ib9daedf114a2e0ecc424641e4929cc4d15b0c776
To address the UX comments, this CL modifies the dialogs when the
device is rebooted to install an update or to perform factory data
reset.
Bug: 20949086
(cherry picked from commit 81dce6631396012e8b722bbed6d003f584800ae1)
Change-Id: I6d0cbbbaf184806366c6581c1c2e7dbcc5d89a17
/system/bin/uncrypt needs to be triggered to prepare the OTA package
before rebooting into the recovery. For larger packages, uncrypt may be
killed before it finishes the work after the timeout. Change to monitor
the uncrypt status and show the progress to user.
Needs matching changes in bootable/recovery/uncrypt, system/core and
external/sepolicy.
Also pick up the two NPE fixes in commits
9bb765448df43d41e0a3edb7de1d1641c9251c35 and
da3f63ffb87397943546a7c5c893ce98f2489df2.
Bug: 20012567
Bug: 20949086
(cherry picked from commit 90237f7beb55dae79cdcba5271f96be778573737)
Change-Id: Ibf2fc80032967e5f6cda3cd469005dd29665c87c
glFinish() dequeues a native buffer, and it fails when
the bufeer has been abandoned, this is ok and will not
casue the app crash
GL_OUT_OF_MEMORY is generated in this case, and it is
not reset until glGetError called. This is happened in
build layer function, glGetError is called after glTexImg2d,
and get GL_OUT_OF_MEMORY, then this function return as OOM,
and app crash
Fix it by adding a glGetError after glFinish
Change-Id: I8803a726b6f609c4a2f8a6aa6bb7ff7064808932
Custom parser can handle nested ICU messages even if they
are split into multiple fragments. Code reworked to encapsulate
all pseudolocalization logic in Pseudolocalizer and PseudoMethods
classes. To minimize a changelist size, some static functions
remained. Fake BiDi pseudolocalization method is reimplemented
to handle word boundaries correctly. Unit tests added.
Change-Id: I9fb4baf4e3123df5dd6d182cca02bb7b0489ca71
b/21187932
Dependency from one kernel to another kernel -- where one reads the
other's output to a global allocation -- was not handled correctly.
This CL fixed that. Needed to make a new CTS test pass.
Change-Id: I500f9cac9d89bcaec7c186e942ba4a7d413daadb
(cherry picked from commit 85858718c0fc8f4f17ee18e5d62ec0614a8bc780)
Modified UTF-8 and UTF-8 differ with respect to how they handle
non-BMP characters. Modified UTF-8 uses 2 x 3 byte encodings, one
each for the high and low surrogate, whereas UTF-8 uses a single
4 byte sequence.
File systems don't specify and encoding and therefore the file name
encoding will vary depending on how it's created. All standard
Java APIs (java.io.File / FileOutputStream etc.) use Modified UTF-8
filenames, so we assume that's the status quo.
We will also audit code from the rest of the platform to make sure
that file names are encoded consistently.
bug: 21578056
Change-Id: I8e37af7f7cc442805a48899917f8e61c8f81fba6
Here's overflow/underflow problem in comparators.
"when1 - when2" may suffer in overflow/underflow condition.
Comparing them directly can avoid this problem.
Change-Id: Id46af3db2adac90654210182d26ade1986ee0661
We had a device where the touchscreen was reconfigured during system
init, and as a result was assigned a device id that was not 0.
The following message from InputReader.cpp was logged when this occured:
I/InputReader( 762): Device reconfigured: id=4, name='himax-touchscreen', size 1024x600, orientation 1, mode 1, display id 0
Attempting to use the input command for the touchscreen in this state
will fail due to the hardcoded touchscreen device id.
Change-Id: I4e8fad864e7b83cce00c680b254bad06e1200f15
If provided the extra entropy will be added to the device before calling
finish. If entropy is provided and the device does not support supplying
additional entropy then finish will fail with KM_ERROR_UNIMPLEMENTED.
Change-Id: If26be118bf382604f6f8e96e833b76e6f9e94d58
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
Commit a40d2447b6f516116135ee7f126579771ba98a2c made the
case consistently "as for the beginning of a sentence".
This updates the docs to reflect that. Previously the
result depended on the string returned (e.g. "Tomorrow"
was capitalized in English) and the casing varied
within and between locales.
Bug: 20247811
Change-Id: If4c6b3a13f61bd0cb64c82fc4c96d053130ae4c8
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