• Home
  • History
  • Annotate
  • only in /frameworks/native/libs/utils/
History log of /frameworks/native/libs/utils/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
04075569b565c949a6db8b4e8a9f10d281de4d9c 25-Oct-2012 Dave Burke <daveburke@google.com> Revert "Revert "put back the unused virtuals in Vector<>""

This reverts commit 225c66a48cdc3acef21ee380dc134449749d3cb3

Change-Id: If31a04b81052cbc7dd7bf237c07107c33066d03d
ectorImpl.cpp
3de9cd202948d1b8f372f901c812ef4257af5946 12-Oct-2012 Kenny Root <kroot@google.com> Add TEMP_FAILURE_RETRY around open and write calls

Bug: 7330849
Change-Id: I9aef3c3d3a248c3eea7ca060124ad6decaa6b4da
ipFileRO.cpp
971f7e9f5d81d30bee5063a32f4953da754ee7ce 19-Sep-2012 Ben Cheng <bccheng@google.com> Disable the use of clock_gettime for now.

Bug: 7100774
Change-Id: I6ede2a37a5d485134fe419b5dc766f70ae4af9d4
ystemClock.cpp
8dc7c6e659c14b4883049d4411ec06c93d9d078d 14-Sep-2012 Ben Cheng <bccheng@google.com> Print warnings when backwards timestamps are detected.

Bug: 7100774

Change-Id: I752fd1680b32ce33d17d6042d6c82e27d7ba9dd2
ystemClock.cpp
50f262fe569b52bb4d44c96de0d296188ce3885e 01-Sep-2012 Mathias Agopian <mathias@google.com> minor SharedBuffer clean-up

Change-Id: If38b7ce85806ae628c00f2c938de4e3f75142543
ectorImpl.cpp
225c66a48cdc3acef21ee380dc134449749d3cb3 25-Aug-2012 Mathias Agopian <mathias@google.com> Revert "put back the unused virtuals in Vector<>"

This reverts commit 1648d4c13ba2eff3ea14cd87ee94028458a39f97.

Bug: 6977192

Change-Id: Idbb6b239aaed4fb1c054ce943f6ba06ede3492bb
ectorImpl.cpp
1648d4c13ba2eff3ea14cd87ee94028458a39f97 21-Aug-2012 Mathias Agopian <mathias@google.com> put back the unused virtuals in Vector<>

some binaries are using these private APIs and broke
(as they should!) with this change. Temporarily restore the
virtuals to work around this.

Bug: 6977550
Change-Id: I7c37f24b16e4d586b89205c493db5169cf87e024
ectorImpl.cpp
6f12d573251528086636707dde2fb01a8b7199b8 11-Aug-2012 Jeff Brown <jeffbrown@google.com> Add a very simple helper function to log slow functions.

Change-Id: I2e2e072206d02b572a330dd25857c161b5b563bf
ndroid.mk
og.cpp
69973992d531ae7df20916c6fb3034b08a6d53c4 10-Aug-2012 Mathias Agopian <mathias@google.com> improve Vector<> safety checks

- make errors that will always cause a memory corruption always fatal
(for eg: KeyedVector<>::editValue{For|At}() failure)
- make other errors fatal in debug mode, those that can be caught by
the caller.
- fix typos

Change-Id: I65cc7d81035c37ce2906fc4500c50e5d5b5c49eb
ectorImpl.cpp
53095e25d69206bea1ac15a7382ab8b61155c0c1 05-Aug-2012 Mathias Agopian <mathias@google.com> libutils cleanup: remove unused or seldom used code from misc.{cpp|h}

Change-Id: I72206f16619d81887e3b85603494563faab3b445
ipFileRO.cpp
isc.cpp
074cd0c0765d1aec5a4ff5ac460f0685ae067fb1 19-Jul-2012 Nick Pelly <npelly@google.com> Add elapsedRealtimeNano(), and use CLOCK_BOOTTIME where possible.

Change-Id: I4231c8ca32663e6e2cb5b7c126d091f837373807
ystemClock.cpp
imers.cpp
ec44ed0758871db896d9c7d5c09f7084ddea1c7a 28-Jun-2012 John Grossman <johngro@google.com> Utils: Fix a bug in the linear transformation code.

Hand merge from ics-aah

> Utils: Fix a bug in the linear transformation code.
>
> Fix a bug where an incorrect result would be computed if you used the
> linear transformation code to do a reverse transformation (from B's
> domain into A's domain) when the scaler fraction was negative.
>
> Change-Id: I8e5f109314d235a177ab41f65d3c4cd08cff78be
> Signed-off-by: John Grossman <johngro@google.com>

Change-Id: Id90e18f685c61c1a89fd91c32adcf01363b3e8f3
Signed-off-by: John Grossman <johngro@google.com>
inearTransform.cpp
9a6b4c73face8005352fc0db1ecf09b2b8bdedcb 01-Jun-2012 Jeff Brown <jeffbrown@google.com> am d5085da3: am 4467bba7: Merge "Support looper callbacks based on smart pointers." into jb-dev

* commit 'd5085da3c0c103bba0c2c927382f7d414275b661':
Support looper callbacks based on smart pointers.
ad7b3760ced1c5ca40b3641e97911803810a839b 01-Jun-2012 Jeff Brown <jeffbrown@google.com> am 80586761: am dad23789: Merge "Delete unused poll() code." into jb-dev

* commit '805867612c0c11d3bb494cbf454cbb2de21a1b75':
Delete unused poll() code.
27d928474d05c8cf976d9da88be876feda7e10f3 01-Jun-2012 Jeff Brown <jeffbrown@google.com> am dce1547d: am 9e2e781a: Merge "Remove unused statistics code." into jb-dev

* commit 'dce1547d65877b89cec4e52ee8e5b39830911d00':
Remove unused statistics code.
af567f73ac828b9c319c12fd92760c4c92f0dfa4 01-Jun-2012 Jeff Brown <jeffbrown@google.com> Support looper callbacks based on smart pointers.

Bug: 6559630
Change-Id: I5a667f219f431838638acefbc9fa6afa610971bd
ooper.cpp
588d5c8280c89c646aa7c8c54900225ee04176ea 31-May-2012 Jeff Brown <jeffbrown@google.com> Delete unused poll() code.

We don't need this code anymore and it is just in the way.

Bug: 6559630
Change-Id: I1dc9decf85d5ea1feab159c2985da6c20baffdd5
ooper.cpp
1ea51bf519bdfc0e04daa88b8788f06105c5599b 31-May-2012 Jeff Brown <jeffbrown@google.com> Remove unused statistics code.

Bug: 6559630
Change-Id: Iacdf4bb4c1c125c09305cbd8cb443c7c80cfc010
ooper.cpp
455961ef65faa75a9b93e49f892faaa27a413d2b 21-May-2012 Mathias Agopian <mathias@google.com> am e0607f05: am 5aed6843: Merge "fix a corruption in Vector<> when adding new items" into jb-dev

* commit 'e0607f0507fe647bd9262facfaf75146c074e933':
fix a corruption in Vector<> when adding new items
a9611c5d5b61c594b9f5f24b24a665dc1e647f81 18-May-2012 Mathias Agopian <mathias@google.com> fix a corruption in Vector<> when adding new items

would happen when vectors are copied and new items is
added in both vectors. we didn't duplicate the underlying
storage when adding items in vectors.

Bug: 6515797
Change-Id: If544c07d96c05821e088d7f2c9b5736f7e306c31
ectorImpl.cpp
ests/Android.mk
ests/Vector_test.cpp
9121ece5fcc0ecd9e07b3b3ce452d8124094d113 11-May-2012 Glenn Kasten <gkasten@google.com> am f30fd014: Merge "Workaround for add_tid_to_cgroup failed to write" into jb-dev

* commit 'f30fd01497a53cbff8692721026c3f7b6830158e':
Workaround for add_tid_to_cgroup failed to write
10cbbd8f1f2899b9dace6436401582bfe36d1cc4 11-May-2012 Glenn Kasten <gkasten@google.com> Workaround for add_tid_to_cgroup failed to write

Bug: 6467109
Change-Id: I6dff8e608d83c7a7c453c25c94ad100f113769b9
hreads.cpp
daee0dcb43b49d43d8de25600a65ba21f5c88d5a 10-May-2012 Dianne Hackborn <hackbod@google.com> am 555f89d8: Add callback hack to find out when to reload system properties.

* commit '555f89d8df316cdc5a25dbedb8614c2ac7a5e0a9':
Add callback hack to find out when to reload system properties.
555f89d8df316cdc5a25dbedb8614c2ac7a5e0a9 09-May-2012 Dianne Hackborn <hackbod@google.com> Add callback hack to find out when to reload system properties.

Every IBinder object can accept a new transaction to tell it that
it might want to reload system properties, and in the process
anyone can register a callback to be executed when this happens.

Use this to reload the trace property.

This is very much ONLY for debugging.

Change-Id: I55c67c46f8f3fa9073bef0dfaab4577ed1d47eb4
race.cpp
isc.cpp
dad60f2aec9ec1de00c3f0a2a633b713b3d53924 09-May-2012 Dianne Hackborn <hackbod@google.com> am 34c65888: Change name of system property for traces.

* commit '34c65888d1842315e987045594e2999442c78f1d':
Change name of system property for traces.
34c65888d1842315e987045594e2999442c78f1d 08-May-2012 Dianne Hackborn <hackbod@google.com> Change name of system property for traces.

This allows the property to be changed from the settings UI.

Change-Id: Ife7424b3549e5bbe51b6ad2fb8e5edde3a9fd608
race.cpp
52016c18c3c7cbdbc78cbbe370a8401fc01370c5 01-May-2012 Andrew Hsieh <andrewhsieh@google.com> Fixed 64-bit porting issues

Fixed two issues about casting between int and pointer which
cause compilation error in 64-bit mode (eg. for 64-bit emulator)

Change-Id: I5ca9a933a239db73e56d6f27de05aa42bd06a650
ipFileRO.cpp
a26e1cfbbcb7dc5e0b1cd79a815362d6a048ef26 16-Mar-2012 Glenn Kasten <gkasten@google.com> Scheduling group cleanup

Remove C++ APIs androidSetThreadSchedulingGroup and
androidGetThreadSchedulingGroup, and the ANDROID_TGROUP_* constants.

Former callers of these should now use the C APIs set_sched_policy and
get_sched_policy, and the SP_* constants.

Note: debug.sys.noschedgroups is not supported by the C APIs,
this needs to be discussed.

Change-Id: I32bbfc539ef4090faf9ef0320380e8cca9eae07c
hreads.cpp
a8be8fa0966521afe78324351e805b4a8351dbd9 18-Apr-2012 Jeff Brown <jeffbrown@google.com> Support tokenizing arbitrary content.

Bug: 6110399
Change-Id: I37be63b68934fd451e6dffbf7d6079553619c0a3
okenizer.cpp
84ed8001d49a5b588fb78413655fe16fab5a3539 05-Apr-2012 Glenn Kasten <gkasten@google.com> Add a log tag

Change-Id: If30aa8536130cf6ff9918ce97c5e4e8651ae2fef
race.cpp
b7beba4548989e1ae8793a11e5f0087b4c9d875c 26-Mar-2012 Keun young Park <keunyoung@google.com> add Looper.cpp to build for linux host to use in CTS audio

Change-Id: I59cfe30fd48fcba0bb949033f4d2aef5ce9916e4
ndroid.mk
1c6cd3803e405251fce50cc5e501821171fbfafb 23-Mar-2012 Colin Cross <ccross@android.com> frameworks/native: link host libutils against external/zlib

Fix the SDK build by statically linking host libutils against libz
from external/zlib.

Change-Id: Id6805d3c9071e6fa0559024336642b5386cf3c52
ndroid.mk
163d5a9fa742e6a39f058fb9ed726fc31f4ecb28 23-Mar-2012 Colin Cross <ccross@android.com> frameworks/native: move Zip* from libandroidfw to libutils

ZipUtils is needed by build/tools, move it from libandroidfw
(frameworks/base) to libutils (frameworks/native).

Change-Id: Ib8c41134ccdec6d6aa8d49860f8dddef49a24783
ndroid.mk
ipFileCRO.cpp
ipFileRO.cpp
ipUtils.cpp
ests/Android.mk
ests/ZipFileRO_test.cpp
0818b0921ef6cda07f41b56d2ef19b2849dfefd1 17-Mar-2012 Jeff Brown <jeffbrown@google.com> Add a simple work queue abstraction.

Makes it easy to schedule a bunch of work to happen in parallel.

Change-Id: Id9c0e52fc8b6d78d2b9ed4c2ee47abce0a01775c
ndroid.mk
hreads.cpp
orkQueue.cpp
93f283dba455346499a8b9d1d82b4ce670db5f78 13-Mar-2012 Andrew Hsieh <andrewhsieh@google.com> Added rules to build f/n/libs/utils in 64-bit: lib64utils.a

It's needed to build four shared libraries in 64-bit for 64-bit
emulator with "-gpu on"
lib64OpenglRender.so
lib64EGL_translator.so
lib64GLES_CM_translator.so
lib64GLES_V2_translator.so

Change-Id: Ia6c05b23df1e9cd9e7f2e94e4cd5bde4be5d336b
ndroid.mk
45b80c69ad8057fde0c0a76f7da3a2183a2aab96 09-Mar-2012 Jeff Brown <jeffbrown@google.com> Expose the set of enabled tags.

This is used by the Java trace wrappers to avoid JNI overhead
when trace tags are disabled.

Also added a new tag for the input subsystem and view hierarchy.

Change-Id: Ia04a507e42a37b1d3bbb19859e6c07a92f4fe9aa
race.cpp
5b067180718d1cd0899d62b26b2539237e579781 01-Mar-2012 Andrew Hsieh <andrewhsieh@google.com> Merge "Fixed several 64-bit porting issues"
0ae8c14b4b915b318250484eff9a18700cd934c3 28-Feb-2012 Andrew Hsieh <andrewhsieh@google.com> Fixed several 64-bit porting issues

1. Use "%zu" instead of "%d" for size_t in printf
2. Variable precision specifier (eg. "%.*s") in printf should be of type int.
(iov_len is size_t which is 64-bit when compiled with -m64)
3. Use PRId64 instead of "%lld" to print variables of type int64_t

Change-Id: I2be40a6514b5dffa0038d62b9bccc3401b8756e6
lobCache.cpp
ebug.cpp
tatic.cpp
topWatch.cpp
f64b1ca000e0a5bb176f4e53f568e48dd1ecc71a 23-Feb-2012 Jamie Gennis <jgennis@google.com> libutils: add a system-wide tracing utility

This change adds some utility functionality for doing userland tracing
into the kernel trace log.

Change-Id: Id0a8cee9ea515b1d8765afd1cecf472a88b4b9e8
ndroid.mk
race.cpp
4f4c10104e8fbeed5dfeefb542e0bc5392daf9a5 21-Feb-2012 Mathias Agopian <mathias@google.com> frameworks/base refactoring

create the new libandroidfw from parts of libui and libutils

Change-Id: I1584995616fff5d527a2aba63921b682a6194d58
ndroid.mk
sset.cpp
ssetDir.cpp
ssetManager.cpp
ackupData.cpp
ackupHelpers.cpp
bbFile.cpp
esourceTypes.cpp
treamingZipInflater.cpp
ipFileCRO.cpp
ipFileRO.cpp
ipUtils.cpp
ests/Android.mk
ests/ObbFile_test.cpp
ests/ZipFileRO_test.cpp
a3a38812087f7ac19bb5cc79ceb7b80384d6bd2e 18-Feb-2012 Mathias Agopian <mathias@google.com> frameworks/base refactoring.

step 2: move libutils headers to their new home: androidfw

Change-Id: I14624ba23db92a81f2cb929f104386e1fab293ef
sset.cpp
ssetDir.cpp
ssetManager.cpp
ackupData.cpp
ackupHelpers.cpp
bbFile.cpp
esourceTypes.cpp
treamingZipInflater.cpp
ipFileCRO.cpp
ipFileRO.cpp
ipUtils.cpp
ests/ObbFile_test.cpp
ests/ZipFileRO_test.cpp
6032a7768227c5c54eee15b253f9cbb14e62039d 17-Feb-2012 Iliyan Malchev <malchev@google.com> libs/utils: replace malloc() + memset() to zero with calloc()

Change-Id: I8bdf4360147e51e35c162856c9a859aed6acac34
Signed-off-by: Iliyan Malchev <malchev@google.com>
ackupHelpers.cpp
esourceTypes.cpp
a1eee39f581249ae137ce3cb372fbf92ed1344bf 02-Feb-2012 Glenn Kasten <gkasten@google.com> Merge "Thread::getTid returns pid_t gettid() after run"
60b133efc357df4da1a1ec55a4a83241a6635f46 31-Jan-2012 Dianne Hackborn <hackbod@google.com> aapt now sorts the strings in the resource string pool.

In our current environment with very many translations, this can
save a lot of RAM -- for example over 200K in Gmail just by sorting
the strings in the Gmail .apk (not the framework).

Also add a new aapt command to print the contents of the resource
table string pool.

Change-Id: I1da037b3e2c377b890833ff57ab158965314ac48
esourceTypes.cpp
ba699cb0f7f95f665593541d2b37e12fb10b85f1 12-Jul-2011 Glenn Kasten <gkasten@google.com> Thread::getTid returns pid_t gettid() after run

This is needed when the parent or any other thread besides the child
needs access to the child's kernel tid.

Change-Id: Ib148505913eb78314cfd76657c30d7b20663dffd
ndroid.mk
hreads.cpp
6726347e8950d34ae162fb8d6a3680a871d359e2 09-Jan-2012 Steve Block <steveblock@google.com> Rename LOG_ASSERT to ALOG_ASSERT DO NOT MERGE

See https://android-git.corp.google.com/g/157519

Bug: 5449033
Change-Id: I8ceb2dba1b031a0fd68d15d146960d9ced62bbf3
efBase.cpp
tring16.cpp
tring8.cpp
ectorImpl.cpp
e6f43ddce78d6846af12550ff9193c5c6fe5844b 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/157220

Bug: 5449033
Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
sset.cpp
ssetManager.cpp
ackupHelpers.cpp
lobCache.cpp
ileMap.cpp
ooper.cpp
ropertyMap.cpp
efBase.cpp
esourceTypes.cpp
treamingZipInflater.cpp
hreads.cpp
okenizer.cpp
ipFileRO.cpp
ipUtils.cpp
32397c1cd3327905173b36baa6fd1c579bc328ff 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/157065

Bug: 5449033
Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
sset.cpp
ssetManager.cpp
ackupHelpers.cpp
lobCache.cpp
ileMap.cpp
ooper.cpp
bbFile.cpp
ropertyMap.cpp
esourceTypes.cpp
ystemClock.cpp
hreads.cpp
ipFileRO.cpp
ipUtils.cpp
a19954ab377b46dbcb9cbe8a6ab6d458f2e32bca 04-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/156801

Bug: 5449033
Change-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea
sset.cpp
ssetManager.cpp
ackupData.cpp
ackupHelpers.cpp
bbFile.cpp
esourceTypes.cpp
tatic.cpp
ipFileRO.cpp
9d4536835248525f32f1504a3d28d5bbfa0a2910 20-Dec-2011 Steve Block <steveblock@google.com> Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/156016

Bug: 5449033
Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
sset.cpp
ssetManager.cpp
ackupData.cpp
ackupHelpers.cpp
allStack.cpp
ileMap.cpp
ooper.cpp
ropertyMap.cpp
efBase.cpp
esourceTypes.cpp
topWatch.cpp
ystemClock.cpp
okenizer.cpp
ipFileRO.cpp
ipUtils.cpp
ests/BasicHashtable_test.cpp
66fbde305047b7a606d083a9ec8994fa693cc7d7 15-Nov-2011 Jeff Brown <jeffbrown@google.com> Add a basic hashtable data structure, with tests!

The basic hashtable is intended to be used to support a variety
of different datastructures such as map, set, multimap,
multiset, linkedmap, generationcache, etc.

Consequently its interface is fairly primitive.

The basic hashtable supports copy-on-write style functionality
using SharedBuffer.

The change introduces a simple generic function in TypeHelpers for
specifying hash functions. The idea is to add template
specializations of hash_type<T> next to the relevant data structures
such as String8, String16, sp<T>, etc.

Change-Id: I2c479229e9d4527b4fbfe3b8b04776a2fd32c973
ndroid.mk
asicHashtable.cpp
rimes.py
ests/Android.mk
ests/BasicHashtable_test.cpp
504f982fd3bbbf14645c2ae8b2ab37ce2081f8e1 22-Nov-2011 Jeff Brown <jeffbrown@google.com> Use libcorkscrew to format the stack trace.

Change-Id: I3a5439ada76bc77c2dd491eaed2272e16a811cc7
allStack.cpp
343c59cc8d67a6be6b6a1a8dfc4376855589ea9a 05-Nov-2011 Jeff Brown <jeffbrown@google.com> Merge "Slight change to the unwinder API."
2ab79e755ba0c4d4f0a6b8a969baa630ce71f81e 04-Nov-2011 Jeff Brown <jeffbrown@google.com> Slight change to the unwinder API.

Change-Id: I5424de76a21b74842e004e0281936b3f492d3c7a
allStack.cpp
7fbb39960e5af2319aeed653ee07751762d6bd8a 03-Nov-2011 Jamie Gennis <jgennis@google.com> am 236aea35: Merge changes Ibc99cb1c,Ie1f4f6f8 into ics-mr1

* commit '236aea3579787961fdd41d87574760b63323c0c1':
BlobCache: implement cache serialization
BlobCache: remove the mutex locking
0e1bc174293d4802f06641187dc5bf632f4e938a 13-May-2011 Jamie Gennis <jgennis@google.com> BlobCache: implement cache serialization

This change adds serialization and deserialization functionality to
BlobCache, conforming to the Flattenable interface.

Change-Id: Ibc99cb1c3d015f363d57d0713eabccec07ff975e
lobCache.cpp
ests/BlobCache_test.cpp
93ca6fb91c613c7dfa287571f32c5c44a797961f 31-Oct-2011 Jamie Gennis <jgennis@google.com> BlobCache: remove the mutex locking

This change removes the mutex from the BlobCache class. The caller must
be responsible for thread synchronization in order to properly implement
the Flattenable interface, which is coming soon. Otherwise would be the
potential for the cache contents to change between the call to the
getFlattenedSize and flatten methods. Because the caller must do this
synchronization anyway there's no reason to also some synchronization
inside BlobCache.

Change-Id: Ie1f4f6f82b78744f46a41ce863cac0cad276a20e
lobCache.cpp
6807e59e0ff943cc6225d46e3c33a8a7eae9b3d7 20-Oct-2011 Steve Block <steveblock@google.com> Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/143865

Bug: 5449033
Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
sset.cpp
ssetManager.cpp
lobCache.cpp
ileMap.cpp
efBase.cpp
esourceTypes.cpp
treamingZipInflater.cpp
ectorImpl.cpp
ipFileRO.cpp
ipUtils.cpp
9f760150f6e0f39b9923cfdc875373606839ee00 12-Oct-2011 Steve Block <steveblock@google.com> Rename (IF_)LOG() to (IF_)ALOG() DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/141576

Bug: 5449033
Change-Id: I42575e7c29cf1c0f465c357a5c97ab118df6f473
hreads.cpp
imers.cpp
e27d62bbf24272d72fcbad5e6f8b69608151205b 20-Oct-2011 Jeff Brown <jeffbrown@google.com> Use libcorkscrew for stack unwinding.

Change-Id: Iee1ee5a2018ab8cfc1ce12ec2a124809245eaa02
ndroid.mk
allStack.cpp
b5fe317b91623f63523ff9ffe82ddd8a5b3c6ef3 20-Oct-2011 Iliyan Malchev <malchev@google.com> add -ldl to host executables

This fixes the build on Linux when RefBase is compiled with reference tracking
enabled.

Change-Id: I3e931e0b463ce836f6fdb30c37068d77144631a3
Signed-off-by: Iliyan Malchev <malchev@google.com>
ndroid.mk
de27227026e01c26a9debef77e4e268f242e713e 07-Oct-2011 Jeff Brown <jeffbrown@google.com> Fix regression in CursorWindow.copyStingToBuffer.
Bug: 5332296

Change-Id: Iff9eed786f0a8293b6156f883a66a322ddad5e99
nicode.cpp
55b81b10aae6a73304609b65249933a4f09e9876 29-Sep-2011 Mathias Agopian <mathias@google.com> may fix the build

Change-Id: I065b1e6652f0e800ba5674a6d9aa954c3ac6c790
ndroid.mk
9dbb77d04b12a3f45ebd156087f6ccb478b35a87 16-Sep-2011 Andreas Huber <andih@google.com> Fix androidGetThreadPriority for non-pthread configurations.

related-to-build

Change-Id: Ic865af0865906f96fd615a56a030c8e3adaf13c4
hreads.cpp
1d60b9629c022811e5efca71eb4d03f8b16a4cb0 15-Sep-2011 Andreas Huber <andih@google.com> A new API "androidGetThreadPriority"

Change-Id: I6baeead8c70460863343fd557250635fb1e6a170
hreads.cpp
aefc9cda45adb00ec1cb2c8fbd03c50fd48499fb 31-Aug-2011 Andy McFadden <fadden@android.com> Resurrect verbose binder logging

Updated the command name lists, and masked off the additional bits in
the command word when doing the name lookup.

Made descriptor values easier to grep for and consistent with kernel
output (i.e. decimal rather than hex). Attempt to show transaction
descriptors as such (they're in a union with a pointer).

Also, the writeLines() function in Static was using a no-op
logging call to write an iovec. It looks like all callers are using
N=1, so I just added a log for the first string.

Bug 5155269

Change-Id: I417b8d77da3eb6ee1d2069ba94047210f75738bc
tatic.cpp
940673f92ed8a0f4e6448b86ec08cee91ef3fc45 29-Aug-2011 Glenn Kasten <gkasten@google.com> Merge "Add C++ thread API androidGetThreadSchedulingGroup"
cbe527884acf0f8f8c550c54f99b4dd864ac1e70 11-Aug-2011 Mathias Agopian <mathias@google.com> fix a memory leak and memory corruption in RefBase

we would leak a weakref_impl if a RefBase was never incWeak()'ed.
there was also a dangling pointer that would cause memory corruption
and double-delete when a custom destroyer was used to delay the
execution of ~RefBase.

it turns out that the custom destroyer feature caused most of the
problems, so it's now gone. The only client was SurfaceFlinger
who now handles things on its own.

RefBase is essentially back its "gingerbread" state, but the
code was slightly cleaned-up.

Bug: 5151207, 5084978
Change-Id: Id6ef1d707f96d96366f75068f77b30e0ce2722a5
efBase.cpp
b313559b212f6c22bb414c14937fb6a6d4b6c45a 28-Jul-2011 Kenny Root <kroot@google.com> Merge "Move extract native libraries to JNI code"
49a65e5526ed3a5353765b3e429c49543d1f3b8c 12-Jul-2011 Kenny Root <kroot@google.com> Move extract native libraries to JNI code

The built-in ZipFile class was quite a long time to find an unpack
libraries. Move everything to using the libutils ZipFileRO class that
goes quite a bit faster. Initial measurements are 6 times faster than
the Java code.

Also, read files off the disk and compare their CRC against the APK's
CRC to see if we need to write the new file to disk. This also cuts down
the bootup time by up to a second per APK that has native files.

Change-Id: Ic464a7969a17368fb6a6b81d026888c4136c7603
ests/Android.mk
ests/ZipFileRO_test.cpp
395dcd07f1fa195e4a968c9ed32197a0de0a8522 26-Jul-2011 Kenny Root <kroot@android.com> am 64ed1059: am e612c881: am 4f3a8db6: am 3cf03987: Merge "Continue idmap generation even if name lookup fails."

* commit '64ed105957098a900d58e7c2598e060cb37755ce':
Continue idmap generation even if name lookup fails.
66a2eec56401980053efd9fdc7883246981d9a20 25-Jul-2011 Kenny Root <kroot@android.com> am e612c881: am 4f3a8db6: am 3cf03987: Merge "Continue idmap generation even if name lookup fails."

* commit 'e612c881ecf74770098aa9c07d4f0611ac982038':
Continue idmap generation even if name lookup fails.
2cc4e531f0950fd4faee67a74f29a6d7182674e7 21-Jul-2011 Kenny Root <kroot@android.com> am 3cf03987: Merge "Continue idmap generation even if name lookup fails."

* commit '3cf039876177b5b314b635bb12a1dae1b42f4605':
Continue idmap generation even if name lookup fails.
585ef1e14a31bfdc83ec40f3362dc1d92c8de977 21-Jul-2011 Jeff Brown <jeffbrown@google.com> Remove unimplemented memory pool.

dlmalloc does such a great job that we don't need a pool anyways.

Change-Id: I105b28c4a5c491543959190c7c0a9de75a5b8052
ndroid.mk
ool.cpp
3919950de8b54d4781c09e711fd2afabab452e69 14-Jul-2011 Le-Chun Wu <lcwu@google.com> Add a call to pthread_attr_destroy to avoid potential memory leaks.

Change-Id: Ib57efc3530e9793298190cc9cab19c9af54e11a7
hreads.cpp
c1053339974b52f7338cd2076f6ef6524a6fcfd5 14-Jul-2011 Jeff Brown <jeffbrown@google.com> Minor code cleanups in vector.

Fixed a potential bug where calling replaceAt with a reference to
an existing element in the vector at the same index would cause
the element to be destroyed while being copied to itself.

Refactored the conditions in _grow and _shrink for clarity.
The computations are exactly the same but I think it reads better
this way. In particular, the ssize_t variable 's' is gone: it didn't
need to be signed anyways because its value could never be negative.

Change-Id: If087841c15e6a87160eee874720c4a77eb0e99a6
ectorImpl.cpp
686f62fcaf4ce2f48d662fa89fb2e84ee9339c4d 14-Jul-2011 Jeff Brown <jeffbrown@google.com> Replace Vector _grow/_shrink checks with assert.

On review of the code, _grow and _shrink are checking for conditions
that cannot happen and that don't even really make sense. For
example, if _shrink is called with where + amount > mCount then
this is really bad, however the check only considered the case
when where >= mCount and then it would arbitrarily choose a new
value for where. Huh?

As it happens, the callers are correctly validating the
arguments before passing them down to these methods so we can
get rid of this code.

Change-Id: I921852dba8997065bb0e9cac733e82028d14afcd
ectorImpl.cpp
a100c02b8d29b516b9191f18c87274ed8f45f2f8 11-Jul-2011 Christopher Tate <ctate@google.com> Compress the backup output stream

Zlib compression, with a full flush between each application's
data. Encryption will be performed on the already-compressed data
once that's implemented.

On restore, the streamed data is similarly uncompressed on the fly.

Change-Id: I19b65c88e759a66527d10913d18fffa9df0bc011
ackupHelpers.cpp
71753982479b9a68e36d43fbb58de0331ea5797c 12-Jul-2011 Jeff Brown <jeffbrown@google.com> Merge "Remove the simulator target from all makefiles. Bug: 5010576"
baa44b89ec159fd65230cbb8ebab62d63a513b0b 12-Jul-2011 Jeff Brown <jeffbrown@google.com> Remove the simulator target from all makefiles.
Bug: 5010576

Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
ndroid.mk
ests/Android.mk
f6f177f2e282da6dcff3c4725eb66096b196aac5 12-Jul-2011 Mathias Agopian <mathias@google.com> Fix typo in an assert's log

Change-Id: I94883a23a0a92eaf3e4976f942f747a2137499ac
ectorImpl.cpp
4fb24275919aab88d0ce346f530c9911d6c08422 23-Jun-2011 Glenn Kasten <gkasten@google.com> Add C++ thread API androidGetThreadSchedulingGroup

This API is intended for applications that need to read a thread's
scheduling group, while using the higher-level (C++) family of thread APIs.

Change-Id: I5e58017f74c3989b20b5b1cc2bc4483c95720520
hreads.cpp
be3c018f8b00738cd7e884058966f82597b8e370 06-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Add Thread::join"
f44c896b091cbbea4a96a6c47ddd65f77ba54b32 06-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Thread ID zero for androidSetThreadSchedulingGroup"
c18d4da5e4d2d41fd5423c10da993d70c2b1b9e0 29-Jun-2011 Jason Simmons <jsimmons@google.com> Add a linear transform library to libutils

Change-Id: Icdec5a6bebd9d8f24b3f335f8ec8b09a5810a774
ndroid.mk
inearTransform.cpp
cd604a1a6e20aa43ebf21b4a1aa05e594c81747f 25-Jun-2011 Christopher Tate <ctate@google.com> Fix settings restore

Also correct the debug-mode logging of error locations in backup data.
Bug 4914182

Change-Id: Ie7dda0192afa819e42490b7ffd2d3db6f11968f6
ackupData.cpp
58e012d1e37e1272d43c9ff0f56c9b236dd1d7f1 23-Jun-2011 Glenn Kasten <gkasten@google.com> Add Thread::join

This new API will be used by applications that previously used the
lower-level pthread APIs (including pthread_join). Centralizing on the
Thread class instead of pthread will permit additional functionality to
be added later in only one location.

Change-Id: I8460169ac9c61ac9f85752405ed54c94651058d7
hreads.cpp
ce63396effb32212501658c25f2ec6d1bd8b0307 23-Jun-2011 Glenn Kasten <gkasten@google.com> Thread ID zero for androidSetThreadSchedulingGroup

Already implemented by androidSetThreadPriority but not documented

Change-Id: I85302b17092952065f3f3a4214d8d8abdd465dbd
hreads.cpp
e397ce2880020b7c04a711e481fc6faf8b52cecd 16-Jun-2011 Mathias Agopian <mathias@google.com> am 0887b8c2: am 8e18668d: revert surfaceflinger leak fix as it uncovered a crasher on xoom (DO NOT MERGE)

* commit '0887b8c2e583e682cd2c1bc909cb3fdbec704004':
revert surfaceflinger leak fix as it uncovered a crasher on xoom (DO NOT MERGE)
dbe60ddd85abf4b18f3b9a97b33e0efa95b0dd8e 16-Jun-2011 Mathias Agopian <mathias@google.com> am d5244e0a: am 52a43990: Revert "revert surfaceflinger leak fix as it uncovered a crasher on xoom"

* commit 'd5244e0a88ed2f843651aa5ffdc71a45c968e0f3':
Revert "revert surfaceflinger leak fix as it uncovered a crasher on xoom"
111280a8de1700f718744f48d163789473b9da30 16-Jun-2011 Kenny Root <kroot@google.com> Use rand() for MinGW

The version of MinGW we use doesn't have nrand48() which is really lame,
but we need to use libutils in the Windows SDK.

Change-Id: If854c03dbf02bc29e79f49e4539f08c2bf057517
lobCache.cpp
1b2c2a9ea0108cd182a56c47997ec68ee8de02b3 16-Jun-2011 Mathias Agopian <mathias@google.com> revert surfaceflinger leak fix as it uncovered a crasher on xoom (DO NOT MERGE)

This reverts commit 52a43990880b27808bcf562afcc4209d34728e6e.

Change-Id: I1856a48f863b051395b8091ddfd1e01292fa1b1e
efBase.cpp
63ad28fb53a1b3b652495e57eb5fe52eb2a0ec80 16-Jun-2011 Mathias Agopian <mathias@google.com> Revert "revert surfaceflinger leak fix as it uncovered a crasher on xoom"

This reverts commit af6edba59e250adbdfa5b3c3be134f70d8c38a16.

Change-Id: I7793d3ca8a4d20a2b188364f47854328ab5f586d
efBase.cpp
e776586a081bddb734441a64f62ea28bee05a96f 16-Jun-2011 Mathias Agopian <mathias@google.com> am 7ecdeb6e: am d20d72d1: Merge "revert surfaceflinger leak fix as it uncovered a crasher on xoom" into honeycomb-mr2

* commit '7ecdeb6e548ff71d4f70b343e30136e89eaa3e33':
revert surfaceflinger leak fix as it uncovered a crasher on xoom
3790e7997a9a4444ef95c862046cf0053ab4703f 16-Jun-2011 Mathias Agopian <mathias@google.com> revert surfaceflinger leak fix as it uncovered a crasher on xoom

Bug: 4600244
Change-Id: Ia68ebf0f243a051ff6a21b3863e3e5d259bbf7ac
efBase.cpp
35cc0fcd51cb8c5580c516247407623e4e8e0cfa 15-Jun-2011 Mathias Agopian <mathias@google.com> am afffa8fa: fix RefBase so it retains binary-compatibility with gingerbread (DO NOT MERGE)

* commit 'afffa8fa9f82a7343e1158bf921931fd3e3df615':
fix RefBase so it retains binary-compatibility with gingerbread (DO NOT MERGE)
982a69f827a8244ade7d95913726f1d0a6b2a9a3 15-Jun-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 4608375"
f0c412513ff0efe0df40325d98a99de7634548ee 14-Jun-2011 Glenn Kasten <gkasten@google.com> Bug 4608375

Update priority and policy together for audio threads

Change-Id: Ib3b07b32586c222c4aacbf23414ae8b05db502be
hreads.cpp
ddc31c3e2bc6ffe66695c385d23e8ccc3c6dad06 13-Jun-2011 Mathias Agopian <mathias@google.com> fix RefBase so it retains binary-compatibility with gingerbread

Bug: 4595257
Change-Id: I0d5e10f497e3f39868bff58f6ded510c38b44b12
efBase.cpp
7794b30589786098756e4734794f0cca30109557 13-Jun-2011 Mathias Agopian <mathias@google.com> am 77079399: am a9c9a4ba: fix RefBase so it retains binary-compatibility with gingerbread (DO NOT MERGE)

* commit '77079399fca3e9c71e2ac06f3da26934e1c278b9':
fix RefBase so it retains binary-compatibility with gingerbread (DO NOT MERGE)
76feee7a58af9626371a3540e6acc936662faabe 13-Jun-2011 Mathias Agopian <mathias@google.com> fix RefBase so it retains binary-compatibility with gingerbread (DO NOT MERGE)

Bug: 4595257
Change-Id: I4773cf4fe59b2509db0ed733739eb6961d473b25
efBase.cpp
867740df0509e1f9b44f16187d1428ba8f351811 13-Jun-2011 Mathias Agopian <mathias@google.com> fix RefBase so it retains binary-compatibility with gingerbread (DO NOT MERGE)

Bug: 4595257
Change-Id: I1db83149107d7dab1f0b7e73c684e0ff82e17e62
efBase.cpp
ac642349ba89c8839c421502fb779bee5cebfee3 13-Jun-2011 Jamie Gennis <jgennis@google.com> Merge "libutils: add a binary blob cache implementation."
c4a0feaaf4dbf8052ee2c231a522a5f596dec42f 13-Jun-2011 Glenn Kasten <gkasten@google.com> Merge "Remove redundant memory barrier"
d9e1bb76fe1e01fb79bb65959b92051aa18fddbe 02-Jun-2011 Glenn Kasten <gkasten@google.com> Remove redundant memory barrier

pthread_create already includes the necessary memory barriers:
- parent at pthread_create : pthread_mutex_unlock(start_mutex)
- child at __thread_entry : pthread_mutex_lock(start_mutex)

Add lock around uses of mThread.

Added comments:
- uses of mThread require lock
- androidCreateRawThreadEtc returned ID is not safe for direct use from non-parent threads.

Change-Id: I18cb296b41ddaf64cf127b57aab31154319b5970
hreads.cpp
66168d4bb452492907765084de886b8cff2fd5b1 10-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of f51ded0f to master

Change-Id: Ida356524a68aeb2b9b0013dfbb6ab4bd11e616e2
5ea8834ab90edad020ae9aa94753eec1901eca51 10-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of e2aa0490 to master

Change-Id: Id0448a1598fc93aca0652b29253e02586e35a067
199512446d07e15797d1ae8b21b92ae61a372352 10-Jun-2011 Dianne Hackborn <hackbod@google.com> am a8d7ea06: am 220cd77d: Merge "Enforce public resource restriction on bag parents." into honeycomb-mr2

* commit 'a8d7ea067cf22baeee2ff0a33e5a8c5a35936942':
Enforce public resource restriction on bag parents.
d4bfc93113bd1a73145935dbf13e1560d151ae17 09-Jun-2011 Dianne Hackborn <hackbod@google.com> Enforce public resource restriction on bag parents.

Need to put some more styles in the SDK to avoid breaking apps.

Also, welcome Android 3.2.

Change-Id: Ia31d07c9b1b91ad868d8630437fdc1b5ae24f37d
esourceTypes.cpp
a1bb021469878a1578a55b671402fe667d0a2546 09-Jun-2011 Mathias Agopian <mathias@google.com> am 96fcb702: am b40e85f9: am 645434fb: Merge "Fix a leak in RefBase" into honeycomb-mr2

* commit '96fcb702d75dcfb36c3ebd8fe420c8b29fa67fb7':
Fix a leak in RefBase
61334a3f831ecd5ad7b91a2b81532f5caffb1307 09-Jun-2011 Christopher Tate <ctate@google.com> Fix handling of directory entries

Don't emit tar blocks for directories with an invalid nonzero size. Also, if
such an entry is encountered during restore, don't actually attempt to treat
it as valid and thus skip over the next actual tar entry.

This patch also adds tracking of the data actually consumed during restore,
and reports a total at the end of stream.

Change-Id: I625173f76df3c007e899209101ff2b587841f184
ackupHelpers.cpp
b0cc4a8083d81f00f808edf75cde336741fdd170 09-Jun-2011 Dianne Hackborn <hackbod@google.com> am a1396dfe: am 02140891: Merge "Work on issue #4518815: Compatibility mode introduces compatibility regression..." into honeycomb-mr2

* commit 'a1396dfe7ad6ec6953f544be42d69d7804ab0fd4':
Work on issue #4518815: Compatibility mode introduces compatibility regression...
ab6bf752b32e1da9dfecbb6f28ca7a0927ef6262 09-Jun-2011 Dianne Hackborn <hackbod@google.com> Merge "Work on issue #4518815: Compatibility mode introduces compatibility regression..." into honeycomb-mr2
ef1e16fc0bb2e88074124ba275beab41b24b338b 09-Jun-2011 Mathias Agopian <mathias@google.com> am 19974ecc: Fix a leak in RefBase (DO NOT MERGE)

* commit '19974eccdbd3e4dbd7e3b2cc401db7806d4a17bc':
Fix a leak in RefBase (DO NOT MERGE)
c2db91c3bfa3e61e00a4c94b02f3e9685fa09cd9 09-Jun-2011 Mathias Agopian <mathias@google.com> am b40e85f9: am 645434fb: Merge "Fix a leak in RefBase" into honeycomb-mr2

* commit 'b40e85f90146a654bfe5657187be491147814ea0':
Fix a leak in RefBase
acf87675ae956a5e94df15115af4fef0902576c8 07-Jun-2011 Dianne Hackborn <hackbod@google.com> Work on issue #4518815: Compatibility mode introduces compatibility regression...

...for Market App iRunner

There were a lot of serious issues with how we updated (or often didn't update)
the display and resource state when switching compatibility mode in conjunction
with restarting and updating application components. This addresses everything
I could find.

Unfortunately it does *not* fix this particular app. I am starting to think this
is just an issue in the app. This change does fix a number of other problems
I could repro, such as switching the compatibility mode of an IME.

Also a few changes here and there to get rid of $#*&^!! debug logs.

Change-Id: Ib15572eac9ec93b4b9966ddcbbc830ce9dec1317
treamingZipInflater.cpp
3b0a7a739e7191964cddd2ff4b87cdee899de82f 09-Jun-2011 Mathias Agopian <mathias@google.com> Fix a leak in RefBase

this bug was introduced recently. it caused RefBase's weakref_impl
structure to be leaked for every RefBase object (about 20 bytes).

Change-Id: Id85e749ba04521199555dd701198edd097c313d4
efBase.cpp
9a03cecf8b63810ba3f451bd139d3b473cb67c81 09-Jun-2011 Mathias Agopian <mathias@google.com> Fix a leak in RefBase (DO NOT MERGE)

this bug was introduced recently. it caused RefBase's weakref_impl
structure to be leaked for every RefBase object (about 20 bytes).

Change-Id: Ia9b155fbfa643ef72cfb8129e96260a3b806a78c
efBase.cpp
9f7bcda136283db5bed5f6c66475d11bcda2de5a 07-Jun-2011 Christopher Tate <ctate@google.com> Fix embedded spaces in tar stream EVEN HARDER

Change-Id: I97ac586ff3541a05d73e1e53f680517c15e6c662
ackupHelpers.cpp
72a404d102a526e4a2b62110cf35226595f335b9 03-Jun-2011 Christopher Tate <ctate@google.com> Implement shared-storage full backup/restore

Every available shared-storage volume is backed up, tagged with its
ordinal in the set of mounted shared volumes. This is an approximation
of "internal + the external card". This lets us restore things to the
same volume [or "equivalent" volume, in the case of a cross-model
restore] as they originated on.

Also fixed a bug in the handling of files/dirs with spaces in
their names.

Change-Id: I380019da8d0bb5b3699bd7c11eeff621a88e78c3
ackupHelpers.cpp
f3d939c5e5c2fa9b1ffea817fde3eece869e2bec 06-Jun-2011 Mathias Agopian <mathias@google.com> merge various SF fixes from gingerbread to honeycomb-mr2 (DO NOT MERGE)

Fix a race that could cause GL commands to be executed from the wrong thread.
RefBase subclasses can now decide how they want to be destroyed.
Fix a race in SurfaceFlinger that could cause layers to be leaked forever.
Fix a race-condtion in SurfaceFlinger that could lead to a crash.

initial cherry-pick:
resolved conflicts for merge of b9783b49 to honeycomb-plus-aosp

Change-Id: I2a335e03fff219e35c18a7b0089b3a11d636576f
efBase.cpp
0129f1a27f13e175c9055e6f169096e5ac40602d 06-Jun-2011 Marco Nelissen <marcone@google.com> resolved conflicts for merge of b9783b49 to honeycomb-plus-aosp

Change-Id: I1d86ea56b3d1d1b69f6671e5b0df0ca3f0c79643
15e113033bf75fe1a5b998f6e69c9cac0691e187 19-May-2011 Christopher Tate <ctate@google.com> Restore from a previous full backup's tarfile

Usage: adb restore [tarfilename]

Restores app data [and installs the apps if necessary from the backup
file] captured in a previous invocation of 'adb backup'. The user
must explicitly acknowledge the action on-device before it is allowed
to proceed; this prevents any "invisible" pushes of content from the
host to the device.

Known issues:

* The settings databases and wallpaper are saved/restored, but lots
of other system state is not yet captured in the full backup. This
means that for practical purposes this is usable for 3rd party
apps at present but not for full-system cloning/imaging.

Change-Id: I0c748b645845e7c9178e30bf142857861a64efd3
ackupHelpers.cpp
98d1f99704b78cd17c7cdaa5d4898d3547428a28 25-May-2011 Jeff Brown <jeffbrown@google.com> am 8148cc3e: am 86ea1f5f: Initial checkin of spot presentation for touchpad gestures. (DO NOT MERGE)

* commit '8148cc3e47e50c916066e2fed562618b5827188f':
Initial checkin of spot presentation for touchpad gestures. (DO NOT MERGE)
9a2c1ca2dd96c30a7bd2242cf08e9f4ba80cc31c 25-May-2011 Jeff Brown <jeffbrown@google.com> am af685f3b: am 85a7f99c: Merge "Refactor how timeouts are calculated. (DO NOT MERGE)" into honeycomb-mr2

* commit 'af685f3bb566f297deee1615d55d4f33d5580ba3':
Refactor how timeouts are calculated. (DO NOT MERGE)
d3e6d3e763544511a870b354f657600d25c42b91 13-Apr-2011 Jeff Brown <jeffbrown@google.com> Initial checkin of spot presentation for touchpad gestures. (DO NOT MERGE)

Added a new PointerIcon API (hidden for now) for loading
pointer icons.

Fixed a starvation problem in the native Looper's sendMessage
implementation which caused new messages to be posted ahead
of old messages sent with sendMessageDelayed.

Redesigned the touch pad gestures to be defined in terms of
more fluid finger / spot movements. The objective is to reinforce
the natural mapping between fingers and spots which means there
must not be any discontinuities in spot motion relative to
the fingers.

Removed the SpotController stub and folded its responsibilities
into PointerController.

Change-Id: Ib647dbd7a57a7f30dd9c6e2c260df51d7bbdd18e
ooper.cpp
be93983384d967d981e2ca4ca21e5916c93c270d 25-May-2011 Simon Wilson <simonwilson@google.com> am c9cd2387: Merge changes I37f0f315,I8cbf6044,Ibb598931,I5262bf11 into gingerbread

* commit 'c9cd2387b6938a6fbefc731d2177902266f2a130':
Fix a race that could cause GL commands to be executed from the wrong thread.
RefBase subclasses can now decide how they want to be destroyed.
Fix a race in SurfaceFlinger that could cause layers to be leaked forever.
Fix a race-condtion in SurfaceFlinger that could lead to a crash.
1eb42cf6dbe457a5173193eb0276f8c703003db5 17-Mar-2011 Jeff Brown <jeffbrown@google.com> Refactor how timeouts are calculated. (DO NOT MERGE)

Added a timeout mechanism to EventHub and InputReader so that
InputMappers can request timeouts to perform delayed processing of
input when needed.

Change-Id: I89c1171c9326c6e413042e3ee13aa9f7f1fc0454
ooper.cpp
imers.cpp
3d6881f3940dd19268006e71dd2ed9896588dfb6 20-May-2011 Mathias Agopian <mathias@google.com> RefBase subclasses can now decide how they want to be destroyed.

This adds a destroy() virtual on RefBase which
sublasses can implement. destroy() is called
in lieu of the destructor whenthe last strong
ref goes away.

Bug: 4483050
Change-Id: I8cbf6044a6fd3f01043a45592b5a60fa1e5fade2
efBase.cpp
d31099f021e998cd4720f18380b9feac863eba07 20-May-2011 Mathias Agopian <mathias@google.com> Merge "Call RefBase::destroy() when OBJECT_LIFETIME_* is not the default"
79ba9b5e39bfcbc6775bca56de139cf0fc5c914f 20-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 06a8ceac to master

Change-Id: Id51574c825affddfac14ad7214c5496d6a3d6e69
8561698c9bd2fd91aee81a3ac8fa5a2f7d2351f6 20-May-2011 Mathias Agopian <mathias@google.com> Call RefBase::destroy() when OBJECT_LIFETIME_* is not the default

Change-Id: Ifb2069e095dba57b7d97e9f2d942fd85fa975f58
efBase.cpp
20aeb1caa4e2232153d3a59923722c19a3563a78 20-May-2011 Mathias Agopian <mathias@google.com> RefBase subclasses can now decide how they want to be destroyed.

This adds a destroy() virtual on RefBase which
sublasses can implement. destroy() is called
in lieu of the destructor whenthe last strong
ref goes away.
efBase.cpp
7583282db6783a7550b70d5b8bfbe613d0480de2 20-May-2011 Dianne Hackborn <hackbod@google.com> am c851ea56: am 69cb8757: Add new "-swNNNdp" resource qualifier.

* commit 'c851ea5672f6e042c2e89b2a2ce4a2467e1fcd2a':
Add new "-swNNNdp" resource qualifier.
22585947ff9d5b4cd4235b399be5c2de2338e68b 20-May-2011 Dianne Hackborn <hackbod@google.com> Add new "-swNNNdp" resource qualifier.

Change-Id: I0101e88ca9d8d44138bdcaf571f24b0352f4f6ce
esourceTypes.cpp
963664b6b7b1d94994a6449c8a49e7457be4d8e3 19-May-2011 MÃ¥rten Kongstad <marten.kongstad@sonyericsson.com> Continue idmap generation even if name lookup fails.

In resources.arsc files, a resource is represented by a specification
block and one or more value blocks. In rare cases, a resource name
is also given a new resource ID, a specification block and no values
blocks. This commit ensures idmap generation does not fail if such an
entry is encountered.

Change-Id: I32302a0b07a7a320b7eeb31886931be3bb7b7e9a
esourceTypes.cpp
58c8dd2aa9a8931a53923054679fb31fecc696c9 29-Apr-2011 Jamie Gennis <jgennis@google.com> libutils: add a binary blob cache implementation.

This change adds an implementation of a cache that stores key/value
pairs of unstructured binary blobs.

Change-Id: Idd01fdabedfa3aed6d359a6efb0592967af52651
ndroid.mk
lobCache.cpp
ests/Android.mk
ests/BlobCache_test.cpp
b41c5a5ae79d8436d09a5fb9ba8e835dd3de88c5 14-May-2011 Christopher Tate <ctate@google.com> Full backup tweaks

* provide placeholder UI showing backup/restore start/stop/timeout
* don't kill the progress UI in mid stream
* tidy up the pax extended header data writing a little

Change-Id: Ife0cb78e3facb541d8327f1d5ca5fe77faa6cbca
ackupHelpers.cpp
89178d4de2964538c8a754df94c0911abe53c171 13-May-2011 Dianne Hackborn <hackbod@google.com> am 46a282f3: am 0ed2e845: Merge "DO NOT MERGE. Integrate add new screen width/height in "dp" configs." into honeycomb-mr2

* commit '46a282f323bc05606e4fe1eba795bd9ac7c99819':
DO NOT MERGE. Integrate add new screen width/height in "dp" configs.
88c0d696cc25defc021ae885811d1d52c482ebcf 13-May-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE. Integrate add new screen width/height in "dp" configs.

You can now specify resource configuration variants "wNNNdp"
and "hNNNdp". These are the minimum screen width/height in "dp"
units. This allows you to do things like have your app adjust
its layout based only on the about of horizontal space available.

This introduces a new configuration change flag for screen size.
Note that this configuration change happens each time the orientation
changes. Applications often say they handle the orientation change
to avoid being restarted at a screen rotation, and this will now
cause them to be restarted. To address this, we assume the app can
handle this new config change if its target SDK version is < ICS.

Change-Id: I4acb73d82677b74092c1da9e4046a4951921f9f4
esourceTypes.cpp
ffd242ed552120b85b6bca968e7cba3abb75e626 13-May-2011 Christopher Tate <ctate@google.com> Use pax extended tar format to support long filenames etc.

'tar' supports only 100-character paths; 'ustar' supports only
155+100 character prefix + paths; neither supports files larger
than about 8 gigabytes. We now use the POSIX.1-2001 'pax'
extended tar format for those files in the backup stream that
are too large or have too-long paths for the 'ustar' format.

Change-Id: I2f256823091deaec9b1ccea685d2344753c6cb67
ackupHelpers.cpp
25bc410b31b81415b6833e13148aeaef03e379ab 11-May-2011 Conley Owens <cco3@android.com> am 041aa34e: am 87d86044: am bcd029b6: Merge "Add missing clean-up of idmap file descriptors."

* commit '041aa34e089d7b194a5d93c682c3af3d3116d3f3':
Add missing clean-up of idmap file descriptors.
d78797f6e69485f37dae9cb255f5287a06b65599 01-Apr-2011 Christopher Tate <ctate@google.com> Full local backup infrastructure

This is the basic infrastructure for pulling a full(*) backup of the
device's data over an adb(**) connection to the local device. The
basic process consists of these interacting pieces:

1. The framework's BackupManagerService, which coordinates the
collection of app data and routing to the destination.

2. A new framework-provided BackupAgent implementation called
FullBackupAgent, which is instantiated in the target applications'
processes in turn, and knows how to emit a datastream that contains
all of the app's saved data files.

3. A new shell-level program called "bu" that is used to bridge from
adb to the framework's Backup Manager.

4. adb itself, which now knows how to use 'bu' to kick off a backup
operation and pull the resulting data stream to the desktop host.

5. A system-provided application that verifies with the user that
an attempted backup/restore operation is in fact expected and to
be allowed.

The full agent implementation is not used during normal operation of
the delta-based app-customized remote backup process. Instead it's
used during user-confirmed *full* backup of applications and all their
data to a local destination, e.g. via the adb connection.

The output format is 'tar'. This makes it very easy for the end
user to examine the resulting dataset, e.g. for purpose of extracting
files for debug purposes; as well as making it easy to contemplate
adding things like a direct gzip stage to the data pipeline during
backup/restore. It also makes it convenient to construct and maintain
synthetic backup datasets for testing purposes.

Within the tar format, certain artificial conventions are used.
All files are stored within top-level directories according to
their semantic origin:

apps/pkgname/a/ : Application .apk file itself
apps/pkgname/obb/: The application's associated .obb containers
apps/pkgname/f/ : The subtree rooted at the getFilesDir() location
apps/pkgname/db/ : The subtree rooted at the getDatabasePath() parent
apps/pkgname/sp/ : The subtree rooted at the getSharedPrefsFile() parent
apps/pkgname/r/ : Files stored relative to the root of the app's file tree
apps/pkgname/c/ : Reserved for the app's getCacheDir() tree; not stored.

For each package, the first entry in the tar stream is a file called
"_manifest", nominally rooted at apps/pkgname. This file contains some
metadata about the package whose data is stored in the archive.

The contents of shared storage can optionally be included in the tar
stream. It is placed in the synthetic location:

shared/...

uid/gid are ignored; app uids are assigned at install time, and the
app's data is handled from within its own execution environment, so
will automatically have the app's correct uid.

Forward-locked .apk files are never backed up. System-partition
.apk files are not backed up unless they have been overridden by a
post-factory upgrade, in which case the current .apk *is* backed up --
i.e. the .apk that matches the on-disk data. The manifest preceding
each application's portion of the tar stream provides version numbers
and signature blocks for version checking, as well as an indication
of whether the restore logic should expect to install the .apk before
extracting the data.

System packages can designate their own full backup agents. This is
to manage things like the settings provider which (a) cannot be shut
down on the fly in order to do a clean snapshot of their file trees,
and (b) manage data that is not only irrelevant but actively hostile
to non-identical devices -- CDMA telephony settings would seriously
mess up a GSM device if emplaced there blind, for example.

When a full backup or restore is initiated from adb, the system will
present a confirmation UI that the user must explicitly respond to
within a short [~ 30 seconds] timeout. This is to avoid the
possibility of malicious desktop-side software secretly grabbing a copy
of all the user's data for nefarious purposes.

(*) The backup is not strictly a full mirror. In particular, the
settings database is not cloned; it is handled the same way that
it is in cloud backup/restore. This is because some settings
are actively destructive if cloned onto a different (or
especially a different-model) device: telephony settings and
AndroidID are good examples of this.

(**) On the framework side it doesn't care that it's adb; it just
sends the tar stream to a file descriptor. This can easily be
retargeted around whatever transport we might decide to use
in the future.

KNOWN ISSUES:

* the security UI is desperately ugly; no proper designs have yet
been done for it
* restore is not yet implemented
* shared storage backup is not yet implemented
* symlinks aren't yet handled, though some infrastructure for
dealing with them has been put in place.

Change-Id: Ia8347611e23b398af36ea22c36dff0a276b1ce91
ackupData.cpp
ackupHelpers.cpp
74cfbe12393cce6456c4cfce87a24c2054d6e5d7 11-May-2011 Conley Owens <cco3@android.com> am 87d86044: am bcd029b6: Merge "Add missing clean-up of idmap file descriptors."

* commit '87d86044c0f15ae2ffc0350271c76ff874fb413b':
Add missing clean-up of idmap file descriptors.
3e17850f1cc6c4e65ebaf89fa8b2c30a3b66fdf4 05-May-2011 MÃ¥rten Kongstad <marten.kongstad@sonyericsson.com> Add missing clean-up of idmap file descriptors.

Change-Id: I9bdc9a4b7962f1a8dce77f4b213c8b9dc26e4b0f
ssetManager.cpp
7e002d9a3f125698ccea76d1244ddad510e9aeef 26-Apr-2011 Kenny Root <kroot@android.com> am fbb0e9f9: am bb93dad9: am bb10986c: am 13ce221e: Merge "libutils: Fix an improper const-cast in RefBase"

* commit 'fbb0e9f9846e185ba8ded63d754c4e61b1499b90':
libutils: Fix an improper const-cast in RefBase
f3faf0bc3d201cec500d6cfdc8db434bd8653e45 26-Apr-2011 Kenny Root <kroot@android.com> am bb93dad9: am bb10986c: am 13ce221e: Merge "libutils: Fix an improper const-cast in RefBase"

* commit 'bb93dad9250c0ee8330ab37bbdcd2eb8bfc0f930':
libutils: Fix an improper const-cast in RefBase
e6b21626a5df95b66e0a0527564e2b9da100c5c3 22-Apr-2011 Josh Stone <cuviper@gmail.com> libutils: Fix an improper const-cast in RefBase

Under Fedora 15 Beta, gcc 4.6.0 warns:

frameworks/base/libs/utils/RefBase.cpp: In member function
‘void android::RefBase::weakref_type::trackMe(bool, bool)’:
frameworks/base/libs/utils/RefBase.cpp:483:67: error: passing
‘const android::RefBase::weakref_impl’ as ‘this’ argument of
‘void android::RefBase::weakref_impl::trackMe(bool, bool)’
discards qualifiers [-fpermissive]

trackMe is not a const function, so don't use const in the static_cast
to a weakref_impl pointer.

Change-Id: I3c9ba73eb127985f5f54197ffecf2939c50f632c
efBase.cpp
4815f2a6ada7941680b29581d5cf5a5ed168f618 13-Apr-2011 Jeff Brown <jeffbrown@google.com> Initial checkin of spot presentation for touchpad gestures.

Added a new PointerIcon API (hidden for now) for loading
pointer icons.

Fixed a starvation problem in the native Looper's sendMessage
implementation which caused new messages to be posted ahead
of old messages sent with sendMessageDelayed.

Redesigned the touch pad gestures to be defined in terms of
more fluid finger / spot movements. The objective is to reinforce
the natural mapping between fingers and spots which means there
must not be any discontinuities in spot motion relative to
the fingers.

Removed the SpotController stub and folded its responsibilities
into PointerController.

Change-Id: I5126b1e69d95252fda7f2a684c9287e239a57163
ooper.cpp
81bc5677452b5433d5214e7976224c8d0f29fbcb 12-Apr-2011 Kenny Root <kroot@google.com> resolved conflicts for merge of 18490fb9 to master

Change-Id: I6c68e6fb0f9c1182a955689bbffc161a8f30bd37
f6bbefd581a28c2b3c8db74efe66eabdc23ab0b3 12-Apr-2011 Kenny Root <kroot@google.com> resolved conflicts for merge of 87b3c0dc to honeycomb-plus-aosp

Change-Id: Ia1a0024aabf531438203eb9fea3a10dd15eabe53
592e3fc1509793e592ba99725736ce4995af8cb3 31-Mar-2011 Dianne Hackborn <hackbod@google.com> Add new resource configurations for screen width/height in "dp".

You can now specify resource configuration variants "wNNNdp"
and "hNNNdp". These are the minimum screen width/height in "dp"
units. This allows you to do things like have your app adjust
its layout based only on the about of horizontal space available.

This introduces a new configuration change flag for screen size.
Note that this configuration change happens each time the orientation
changes. Applications often say they handle the orientation change
to avoid being restarted at a screen rotation, and this will now
cause them to be restarted. To address this, we assume the app can
handle this new config change if its target SDK version is < ICS.

Change-Id: I22f8afa136b4f274423978c570fa7c9855040496
esourceTypes.cpp
5f29c87ef2ed197e19b614d306dbbd24a283305d 17-Mar-2011 MÃ¥rten Kongstad <marten.kongstad@sonyericsson.com> Runtime resource overlay, iteration 1.

Runtime resource overlay allows unmodified applications to appear
as if they had been compiled with additional resources defined. See
libs/utils/README for more information.

This commit is the first iteration of runtime resource overlay. It
provides the actual overlay modifications and loading of trusted overlay
packages (ie residing in /vendor) targeting framework-res.apk.

This commit loads exactly one overlay package. The overlay,
if present, must target framework-res.apk and be located at
/vendor/overlay/framework/framework-res.apk.

Change-Id: If26ee7754813004a96c043dba37fbe99fa3919db
ssetManager.cpp
EADME
esourceTypes.cpp
3bafffb1bd241e4ecb93a91015a189b65bd61f2b 22-Mar-2011 Carl Shapiro <cshapiro@google.com> Include strings.h for the strcasecmp prototype.

Change-Id: I0659ce2186547274e58f8b2027e16d3e45189353
ssetManager.cpp
c0a5e8df03d949cb307a0eb98f0222086c0434c1 17-Mar-2011 Jeff Brown <jeffbrown@google.com> Refactor how timeouts are calculated.

Added a timeout mechanism to EventHub and InputReader so that
InputMappers can request timeouts to perform delayed processing of
input when needed.

Change-Id: Iec2045baaf4e67690b15eef3c09a58d5cac76897
ooper.cpp
imers.cpp
80f3e7cc1506bbb4bec458e15629805a7c1df7ee 02-Mar-2011 Jeff Brown <jeffbrown@google.com> Fade out the mouse pointer after inactivity or other events.

Fades out the mouse pointer:
- after 15 seconds of inactivity normally
- after 3 seconds of inactivity in lights out mode
- after a non-modifier key down
- after a touch down

Extended the native Looper to support enqueuing time delayed
messages. This is used by the PointerController to control
pointer fade timing.

Change-Id: I87792fea7dbe2d9376c78cf354fe3189a484d9da
ooper.cpp
ests/Looper_test.cpp
32bebb0a58dd9c699aed8045ca2e752f681e5a0f 26-Feb-2011 Mathias Agopian <mathias@google.com> Fix sp<> conversion operator / constructor

some of the conversion operators were not using the proper
pointer type when calling incStrong/decStrong, usually it
has no bad consequences, but for some implementation
of the ref-counted object it could lead to recording the wrong
owner id.

Change-Id: If574b9069b8a4cf6e0911a992c8f095aba799995
efBase.cpp
da26c6662db6ad76f214df0e7ebe9fe3b211c0fe 25-Feb-2011 Mathias Agopian <mathias@google.com> Merge "Fix some issues with RefBase debugging."
3477a8cff2cf0eb5fcec03b0dc8ef9dcf64c0eb4 24-Feb-2011 Glenn Kasten <gkasten@google.com> Merge "Bug 3362814 Fix SMP race in access to mRequestExit"
f14a1046e7242222300bbe88d530c3b531fc7678 17-Feb-2011 Mathias Agopian <mathias@google.com> Fix some issues with RefBase debugging.

First slipt sp<> out of RefBase into StrongPointer.h so it can be reused
more easily and to make it clear that it doesn't require RefBase.

Note: the rest of the change only affects the system when DEBUG_REFS is enabled.

The main problem we fix here is that the owner id associated with each
reference could get out of date when a sp<> or wp<> was moved, for
instance when they're used in a Vector< >.

We fix this issue by calling into RefBase::moveReferences from
a template specialization for sp<TYPE> and wp<TYPE> of the
type helpers. RefBase::moveReferences() has then a chance to
update the owner ids.

There is a little bit of trickery to implement this generically in
RefBase, where we need to use a templatized functor that can turn
a sp<TYPE>* casted to a void* into a RefBase*.

Introduced a new debug option DEBUG_REFS_FATAL_SANITY_CHECKS
currently set to 0 by default as there seem to be an issue
with sp<ANativeWindow> which trips the sanity checks.

Change-Id: I4825b21c8ec47d4a0ef35d760760ae0c9cdfbd7f
efBase.cpp
7e453a51a5436c6c8c49c1e37cea5077bce09405 01-Feb-2011 Glenn Kasten <gkasten@google.com> Bug 3362814 Fix SMP race in access to mRequestExit

Also fix an unlikely SMP race in access to mHoldSelf on entry to _threadLoop.

Change-Id: I6cbc0b94739c7dd5e77e8a5ba0da22cdc0b1a4db
hreads.cpp
a08ef4932fc6dcb812a7ceb5a87e8d144a6adda4 17-Feb-2011 Mathias Agopian <mathias@google.com> Remove RefBase.h dependency on TextOutput.h

Change-Id: I72cd6b98ef82b4868fe1c8ec87862cf43fb4ee73
efBase.cpp
af1cf07134dccc884c654da0e713c9213d7be3f4 16-Feb-2011 Kenny Root <kroot@google.com> Clean up use of HAVE_ANDROID_OS

HAVE_ANDROID_OS was defined as "1" for targets, but never defined as "0"
for non-targets. Changing them to #ifdef should be safe and matches
all the other uses of HAVE_ANDROID_OS throughout the system.

Change-Id: I82257325a8ae5e4e4371ddfc4dbf51cea8ea0abb
ystemClock.cpp
hreads.cpp
d45c61dfcfed72eaa6bcc197192b9ac24296e353 31-Jan-2011 Jean-Baptiste Queru <jbq@google.com> am 1314bdb2: am e88fa50b: Merge from open-source gingerbread

* commit '1314bdb2b22ae3613c3e08ae278dbc70f90b965c':
fix failing thread object run
9bfc45e3c3c57a4e512b83f87f150a33572d3637 31-Jan-2011 Jean-Baptiste Queru <jbq@google.com> am e88fa50b: Merge from open-source gingerbread

* commit 'e88fa50be8d6709ef58b7aeb01c5efa059bcac2e':
fix failing thread object run
02bac86968f556bc9f1c100118a9fef847c6cde2 31-Jan-2011 Jean-Baptiste Queru <jbq@google.com> Merge from open-source gingerbread

Change-Id: I56f2ed37187796807fbf0de15274a85164f9432c
402960177f9539e4e66623c82f0d123c9b4ba5a1 30-Jan-2011 Dianne Hackborn <hackbod@android.com> am a1f5e82f: am a30063d8: am 25eb0464: Merge "Normalize output from aapt d"

* commit 'a1f5e82f37c77af7b1d630b5bca715d1742f1234':
Normalize output from aapt d
a8eea2f3d98fb510803085635ba331e7026902b5 30-Jan-2011 Dianne Hackborn <hackbod@android.com> am a30063d8: am 25eb0464: Merge "Normalize output from aapt d"

* commit 'a30063d80c08434ac3c7316f338c6d54110449ab':
Normalize output from aapt d
11e0746577faa032a8db9bd8192a180d938060d0 28-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3392073: At times soft keyboard comes up in...

...gallery while attaching picture to gmail message

In various places we could block switching the IME target incorrectly.

Change-Id: I7e647fb35f4ea6f2e39eb7efd911420ea9ee64fa
esourceTypes.cpp
5ee1a0c5ee41a9c7366e7e378e5ab232072bb983 26-Jan-2011 Ritu Srivastava <rsrivast@sta.samsung.com> fix failing thread object run

A previously exited Thread object refuses to run again, if the
thread-id of the caller, conincides with the thread-id it previously
used in the worker thread. Hence reset the previously used worker
thread-id to -1 when it exits.

Signed-off-by: Ritu Srivastava <rsrivast@sta.samsung.com>

Change-Id: I873925c312a43ec8a16392b98cc959042ff6bfd2

Signed-off-by: Madan Ankapura <mankapur@sta.samsung.com>
hreads.cpp
15025254eb81d0bbd513d823662d46cf6e57f538 04-Jan-2011 Eric Laurent <elaurent@google.com> Fix issue 3302649.

The cause of the problem is that AudioTrack::start() can fail if it is called from a newly created
thread that has the same ID as the AudioTrack callback thread that has just been stopped and not yet exited.
This is possible as the thread ID used by the Thread class is not the TID.

The fix consists in clearing the thread ID before exiting the thread loop.

Change-Id: I8b5f6a63feeaeb9a01267380e85f6f1456e7aa01
hreads.cpp
a017d5b37968b2a70d8c25846bfeb9b35d0f7e9d 04-Jan-2011 Eric Laurent <elaurent@google.com> Fix issue 3302649.

The cause of the problem is that AudioTrack::start() can fail if it is called from a newly created
thread that has the same ID as the AudioTrack callback thread that has just been stopped and not yet exited.
This is possible as the thread ID used by the Thread class is not the TID.

The fix consists in clearing the thread ID before exiting the thread loop.

Change-Id: I66e679665c384403cb3ba2c31746f5de72d5836d
hreads.cpp
ca6fca93fc3a6587d6569c37069966152131a9b2 20-Dec-2010 Shachar Shemesh <lingnu@gmail.com> Normalize output from aapt d

Make the output from aapt dump --values resources and aapt dump xmltree normalized, so that it is unambigously displayed
regardless of the content of the strings.

Change-Id: Ia3bff36c4ee1e9a44f474534e154830948beabdf
esourceTypes.cpp
4c501a42173bfc0c7c9ee32312db392c59b67e13 24-Dec-2010 Jeff Brown <jeffbrown@google.com> Add initial support for cursor-based pointing devices.

Some parts stubbed out but you can plug in a mouse and move
a green cursor around to interact with the UI.

Change-Id: I80d597a7f11d3bd92041890f74b3c77326975e6e
ropertyMap.cpp
18092ddc866425598abf4521d9ed4eda9573fdaa 24-Nov-2010 Kenny Root <kroot@google.com> Change assets to use 64-bit API

The asset system and supporting libraries were using off_t instead of
off64_t to access files larger than 2GB (32-bit signed). This change
replaces all off_t with off64_t and lseek64.

There is a new utils/Compat.h added for Mac OS compatibility.

Also fixed some size-related compiler warnings.

Bug: 3205336
Change-Id: I9097b3cb7a602e811fe52f245939d8975da55e9e
ndroid.mk
sset.cpp
ileMap.cpp
bbFile.cpp
treamingZipInflater.cpp
ipFileCRO.cpp
ipFileRO.cpp
db360642ed7a48eb3b3607a791bbe449cc6529bb 02-Dec-2010 Jeff Brown <jeffbrown@google.com> Improve support for external keyboards.

Use Vendor ID, Product ID and optionally the Version to
locate keymaps and configuration files for external devices.

Moved virtual key definition parsing to native code so that
EventHub can identify touch screens with virtual keys and load
the appropriate key layout file.

Cleaned up a lot of old code in EventHub.

Fixed a regression in ViewRoot's fallback event handling.

Fixed a minor bug in FileMap that caused it to try to munmap
or close invalid handled when released if the attempt to map
the file failed.

Added a couple of new String8 conveniences for formatting strings.

Modified Tokenizer to fall back to open+read when mmap fails since
we can't mmap sysfs files as needed to open the virtual key
definition files in /sys/board_properties/.

Change-Id: I6ca5e5f9547619fd082ddac47e87ce185da69ee6
ileMap.cpp
tring8.cpp
okenizer.cpp
6688837ff6a959b4f59d9a4249aac1504f590a4b 30-Nov-2010 Jeff Brown <jeffbrown@google.com> Support non-orientation aware keyboards and other devices.

Fixed a bug with dpad keys on external keyboards being rotated
according to the display orientation by adding a new input device
configuration property called "keyboard.orientationAware".

Added a mechanism for overriding the key layout and key character
map in the input device configuration file using the new
"keyboard.layout" and "keyboard.characterMap" properties.

Also added "trackball.orientationAware", "touch.orientationAware" and
"touch.deviceType" configuration properties.

Rewrote the configuration property reading code in native code
so that it can be used by EventHub and other components.

Added basic support for installable idc, kl, and kcm files
in /data/system/devices. However, there is no provision for
copying files there yet.

Disabled long-press character pickers on full keyboards so that
key repeating works as expected.

Change-Id: I1bd9f0c3d344421db444e7d271eb09bc8bab4791
ndroid.mk
ropertyMap.cpp
9ee93d18edb42d55441b636aa7e001260f1b758d 19-Nov-2010 Jeff Brown <jeffbrown@google.com> Fix SDK build on Windows due to use of mmap.

Change-Id: Id4bd9a6f932285c93c5853e540efc20b99876564
okenizer.cpp
a3477c862a5debcac7dfb076749059406ec59512 11-Nov-2010 Jeff Brown <jeffbrown@google.com> Added support for full PC-style keyboards.

BREAKING CHANGE: Redesigned the key character map format to
accomodate full keyboards with more comprehensive suite of modifiers.
Old key character maps will not work anymore and must be updated.
The new format is plain text only and it not compiled to a binary
file (so the "kcm" tool will be removed in a subsequent check-in).

Added FULL keyboard type to support full PC-style keyboards.

Added SPECIAL_FUNCTION keyboard type to support special function
keypads that do not have any printable keys suitable for typing
and only have keys like HOME and POWER

Added a special VIRTUAL_KEYBOARD device id convention that maps
to a virtual keyboard with a fixed known layout. This is designed
to work around issues injecting input events on devices whose
built-in keyboard does not have a useful key character map (ie.
when the built-in keyboard is a special function keyboard only.)

Modified several places where events were being synthesized
to use the virtual keyboard.

Removed support for the "qwerty" default layout.
The new default layout is "Generic". For the most part "qwerty"
was being used as a backstop in case the built-in keyboard did
not have a key character map (probably because it was a special
function keypad) and the framework needed to be able to inject
key events anyways. The latter issue is resolved by using the
special VIRTUAL_KEYBOARD device instead of BUILT_IN_KEYBOARD.

Added the concept of a key modifier behavior so that
MetaKeyKeyListener can distinguish between keyboards that use
chorded vs. toggled modifiers.

Wrote more robust key layout and key character map parsers
to enable support for new keyboard features and user installable
key maps.

Fixed a bug in InputReader generating key ups when keys
are released out of sequence.

Updated tons of documentation.

Currently QwertyKeyListener is being used for full keyboards
with autotext and capitalization disabled. This mostly works
but causes some problems with character pickers, etc.
These issues will be resolved in subsequent changes.

Change-Id: Ica48f6097a551141c215bc0d2c6f7b3fb634d354
ndroid.mk
tring8.cpp
okenizer.cpp
c412dcb3eb259458905aae9a2f5109c59c9548c0 09-Nov-2010 Kenny Root <kroot@google.com> Split UTF functions from String8/16

Split out all the UTF-8/16/32 handling code from String8/16 to its own
file to allow better reuse of code.

Change-Id: If9ce63920edc75472c38da4adce0d13cda9ad2f7
ndroid.mk
esourceTypes.cpp
tring16.cpp
tring8.cpp
nicode.cpp
ests/Android.mk
ests/Unicode_test.cpp
ec033c57b6112ea9ece34717f213606f1e7fc6dd 02-Nov-2010 Kenny Root <kroot@google.com> Fix default return code for getResource

Reorganization of getResource to allow for other densities accidentally
overrode the default return code for getResource from BAD_VALUE to
BAD_INDEX. This corrects the default return to BAD_VALUE which restores
other things to working.

Bug: 3155824
Change-Id: I13dafff85bc6978c5f5435fc09ab0474c7885c4d
esourceTypes.cpp
133cde5805067d7bc7f123e1b3154816fa5eef37 28-Oct-2010 Kenny Root <kroot@google.com> Add path to get different DPI drawables

Allow a caller to request a different density than their current display
allows. This can mean a device displaying mdpi can get a resource that's
in hdpi and have it pretend to be in mdpi resolution. If a drawable
that's returned is not in the requested density, it will set it at the
appropriate density to be scaled up later on.

The API for this is hidden currently.

Bug: 3134688
Change-Id: I6c3908cbdef4907b8d3f1576df9e3b0e7af1755a
esourceTypes.cpp
4b3d8bd9a416beea69ceb31a42033b8fead63d72 22-Oct-2010 Kenny Root <kroot@google.com> am 7ba8c44e: am 8ad30b5b: Merge "Initialized check in ZipFileRO::findEntryByName" into gingerbread

Merge commit '7ba8c44ef7ba22d83a670e50314d69d0ddce1b9c'

* commit '7ba8c44ef7ba22d83a670e50314d69d0ddce1b9c':
Initialized check in ZipFileRO::findEntryByName
06dbe50a1a138d3cde72f44036e691eb2676718d 22-Oct-2010 Kenny Root <kroot@google.com> Initialized check in ZipFileRO::findEntryByName

If a ZipFileRO object is uninitialized, the hash table will not have
been initialized. This condition wasn't checked in findEntryByName.

Bug: 3121109
Change-Id: Ib696e0e7e0cb4dd0fb2e456d6a847e5e8f4fe14e
ipFileRO.cpp
c6a98bb73d9ba63c8490fd522eb19638e7296834 21-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of 368fdba4 to master

Change-Id: I42b7b433c86a71a5da5db67109f056a280077c9d
fc1a4df52346dae7dbf5928a878156ceca002148 19-Oct-2010 Joe Onorato <joeo@google.com> Reduce logging.

Remember, the system and main logs are
- Shared resources
- Primarily for recording problems
- To be used only for large grained events during normal operation

Bug: 3104855
Change-Id: I136fbd101917dcbc8ebc3f96f276426b48bde7b7
treamingZipInflater.cpp
6a817e22e4b09a982ba17c1aff57f9fcb735c950 13-Sep-2010 Jeff Brown <jeffbrown@google.com> Add keycodes and meta-key modifiers to support external keyboards.

Added new key maps for external keyboards. These maps are intended to
be shared across devices by inheriting the "keyboards.mk" product
makefile as part of the device's product definition.

One of the trickier changes here was to unwind some code in
MetaKeyKeyListener that assumed that only the low 8 bits of the meta key
state were actually used. The new code abandons bitshifts in favor
of simple conditionals that are probably easier to read anyways.
The special meta key state constants used by MetaKeyKeyListener
are now (@hide) defined in KeyEvent now so as to make it clearer that they
share the same code space even if those codes are not valid for KeyEvents.

The EventHub now takes care of detecting the appropriate key layout
map and key character map when the device is added and sets system
properties accordingly. This avoids having duplicate code in
KeyCharacterMap to probe for the appropriate key character map
although the current probing mechanism has been preserved for legacy
reasons just in case.

Added support for tracking caps lock, num lock and scroll lock and
turning their corresponding LEDs on and off as needed.

The key character map format will need to be updated to correctly support
PC style external keyboard semantics related to modifier keys.
That will come in a later change so caps lock doesn't actually do
anything right now except turn the shiny LEDs on and off...

Added a list of symbolic key names to KeyEvent and improved the toString()
output for debug diagnosis. Having this list in a central place in the
framework also allows us to remove it from Monkey so there is one less
thing to maintain when we add new keycodes.

Bug: 2912307
Change-Id: If8c25e8d50a7c29bbf5d663c94284f5f86de5da4
tring8.cpp
cc13ed145c3bcd5692b77a57866588737d6b45e4 15-Oct-2010 Raphael Moll <raphael@google.com> am 729503c2: am 848a2bc4: Merge "MinGW/Cygwin requires open() in O_BINARY mode." into gingerbread

Merge commit '729503c280e0d5b2621a8b7a6c93dd20fe1f5d0f'

* commit '729503c280e0d5b2621a8b7a6c93dd20fe1f5d0f':
MinGW/Cygwin requires open() in O_BINARY mode.
d72b033033381c878322ff6761438d8d2d91b589 15-Oct-2010 Kenny Root <kroot@google.com> am 8fda1636: am bdf8034c: Merge "OBB: use PBKDF2 for key generation." into gingerbread

Merge commit '8fda1636e3e35f060b9046294efd3c062a1fdb84'

* commit '8fda1636e3e35f060b9046294efd3c062a1fdb84':
OBB: use PBKDF2 for key generation.
2cf43c6988e478c23bb1538ce711403e7da11743 14-Oct-2010 Raphael Moll <raphael@google.com> MinGW/Cygwin requires open() in O_BINARY mode.

Alsso printf %zd is not supported on MinGW/Cygwin.

Change-Id: I03811dabb46e2b05dd1d8abcc0ff97b125c77d54
ipFileRO.cpp
95a68893125105f131ee1b4eaef1dc16da1ef789 14-Oct-2010 Kenny Root <kroot@google.com> OBB: use PBKDF2 for key generation.

Switch to using PBKDF2 for the key generation for OBBs. Any previously
generated OBBs will stop being read correctly. A small pbkdf2gen program
is available to allow generation of appropriate keys with the salts.

Bug: 3059950
Change-Id: If4305c989fd692fd1150eb270dbf751e09c37295
bbFile.cpp
ests/ObbFile_test.cpp
2eb1995a5dfdc19f47580cd091a67994bd5f4b62 10-Oct-2010 Jeff Brown <jeffbrown@google.com> am 22cb4ef8: am d577cfd7: Merge "Switch Looper back to using poll() instead of epoll()." into gingerbread

Merge commit '22cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5'

* commit '22cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5':
Switch Looper back to using poll() instead of epoll().
54e1cdacd2b132997fdca5e5b90e45855c7a2a95 06-Oct-2010 Jeff Brown <jeffbrown@google.com> Switch Looper back to using poll() instead of epoll().

Added a couple of micro-optimizations to avoid calling wake() unnecessarily
and reduce JNI overhead slightly.

Fixed a minor issue where we were not clearing the "next" field of Messages
returned by the MessageQueue so the Message would hold on to its successor
and potentially prevent the GC from collecting it if the message were leaked
somehow.

Change-Id: I488d29417ce0cdd7d0e447cda76ec978ef7f811c
ooper.cpp
ests/Looper_test.cpp
8c4edc02d5fae7ea01f1c5e5316d4058935d695c 06-Oct-2010 Kenny Root <kroot@google.com> am bfa33b94: am f84a5918: Merge "Use pread() in ZipFileRO for Linux" into gingerbread

Merge commit 'bfa33b9484e2c0a019ab81f30261b9696df23a9b'

* commit 'bfa33b9484e2c0a019ab81f30261b9696df23a9b':
Use pread() in ZipFileRO for Linux
61ef747e0e1b3980fbb10ce48de575caa69a6a74 04-Oct-2010 Kenny Root <kroot@google.com> Use pread() in ZipFileRO for Linux

AssetManager instances are created by zygote and passed to all its
children so that they don't have to individually open
frameworks-res.apk. This creates a problem for determining the current
file offset when using lseek() on those files, because you can't
guarantee the cross-process locking of a mutex. Luckily, Linux
implements pread() to get around this suckiness.

The problem is that only Linux implements this, so we have to keep the
old locking for use on host builds with aapt and friends. aapt doesn't
have this same problem of sharing file descriptors across forked
processes, so we can keep the local AutoMutex to protect accesses of
those files.

Change-Id: Ibe9f11499a53fe345f50fbaea438815ec0fd363e
ipFileRO.cpp
3d20bc9ff602a2f81a4570d15b5e1f3cff80af29 04-Oct-2010 Kenny Root <kroot@google.com> am ac754073: am b58b2714: Merge "ZipFileRO: moar logging and wrap close" into gingerbread

Merge commit 'ac7540733cafcca5bdb1842e1ebcb396ba064583'

* commit 'ac7540733cafcca5bdb1842e1ebcb396ba064583':
ZipFileRO: moar logging and wrap close
dbf6f272a2cad97f7ce7fa600ffd2220483c80d1 02-Oct-2010 Kenny Root <kroot@google.com> ZipFileRO: moar logging and wrap close

There is apparently still a race upon reading the entry Local File
Header that can't be tracked down, so move the LFH check inside the
mutex-protected block so we can call lseek again to see where we are
when we log an error.

Also, close() can fail so use TEMP_FAILURE_RETRY on it so we don't
unwittingly leak file descriptors when Mean Mr. EINTR comes a-knocking.

Change-Id: I753abad0bd882fe28f7281c406fa76f64393ef4c
ipFileRO.cpp
323b75e3c473eeb24fefcb2a0ccdeb3a9853f616 25-Sep-2010 Kenny Root <kroot@google.com> am c55f6da7: am 0b606263: Merge "Revert "Revert "Free created FileMap when uncompressing files""" into gingerbread

Merge commit 'c55f6da7281d34a4b875975cdf68f5062dfe4b34'

* commit 'c55f6da7281d34a4b875975cdf68f5062dfe4b34':
Revert "Revert "Free created FileMap when uncompressing files""
d6d93dbb86909747a5c7a8f363b28901dbb7422f 25-Sep-2010 Kenny Root <kroot@google.com> am 3e07c000: am 74865ef6: Merge "Add locking around ZIP seeking" into gingerbread

Merge commit '3e07c0007b10fbda945516acaf6b2a8787a6ca06'

* commit '3e07c0007b10fbda945516acaf6b2a8787a6ca06':
Add locking around ZIP seeking
b47eafac1d1388f002e40033bffab0669e546d90 24-Sep-2010 Kenny Root <kroot@google.com> Revert "Revert "Free created FileMap when uncompressing files""

This revert reverts commit a19ef306bd0a257c67b50f5e0e669e9fe52b0889.
ipFileRO.cpp
fa98920b7192d0db8d22d9345b750810f89f9cdd 24-Sep-2010 Kenny Root <kroot@google.com> Add locking around ZIP seeking

Since we switched to seeking to the LFH to verify its existence instead
of a huge mmap of the file, we have to guarantee that another seek
doesn't happen before we finish our read on the LFH.

Change-Id: If8135d9cb6f2f5cc4db734eafa4f6b5f6269c62a
ipFileRO.cpp
6bea17498385e644e243ded1e2205ce1388c1367 22-Sep-2010 Jeff Brown <jeffbrown@google.com> am 4ec134cd: am cce0cd13: Merge "Looper: use pthread_once for TLS key initialization." into gingerbread

Merge commit '4ec134cdba52b663506562c6406b07915820b007'

* commit '4ec134cdba52b663506562c6406b07915820b007':
Looper: use pthread_once for TLS key initialization.
61a25b249066baed0fdab0411f44a2c6b7292766 22-Sep-2010 Jeff Brown <jeffbrown@google.com> Looper: use pthread_once for TLS key initialization.

Also fix a Valgrind complaint by zeroing out the entire epoll event
struct since otherwise the data field union would be partly
uninitialized (but not in a harmful way).

Change-Id: I2091ce517e87fcad7c9caf90e2c5e4854a7ca465
ooper.cpp
62927a553958ab510f8b62fed4dcbb96a6e55943 18-Sep-2010 Jeff Brown <jeffbrown@google.com> am a8d95248: am 7d4739be: Merge "Reduce lock thrashing in native Looper." into gingerbread

Merge commit 'a8d95248bdbb8ea0933ecf86d2859964324978a7'

* commit 'a8d95248bdbb8ea0933ecf86d2859964324978a7':
Reduce lock thrashing in native Looper.
ed242de3f5b709e9e0925513ab976886a04358c0 18-Sep-2010 Jeff Brown <jeffbrown@google.com> Reduce lock thrashing in native Looper.

In the common case, there is nothing interesting happening on the native
Looper besides occasional wake ups. There is no point grabbing the
semaphore then.

Change-Id: Ib5c426d0e158dfa37891b7ff5537b6f833592fad
ooper.cpp
339f69889fbaa94811ca4128f8fe3a05c5f6f379 17-Sep-2010 Jeff Brown <jeffbrown@google.com> am d3576ef8: am 1ac48eab: Merge "Ensure input dispatcher and native looper handles EINTR." into gingerbread

Merge commit 'd3576ef8906798d91da3ee88a103f4bedcab169e'

* commit 'd3576ef8906798d91da3ee88a103f4bedcab169e':
Ensure input dispatcher and native looper handles EINTR.
f67f29903680e7a33af020dbeb80697ad619b26e 17-Sep-2010 Jeff Brown <jeffbrown@google.com> Ensure input dispatcher and native looper handles EINTR.

Change-Id: I0a42db5f273b9bfe4ab174e4ee65d5d852f9f6bc
ooper.cpp
dc543aec707be4239caec16f9fd3c13878f90a2f 15-Sep-2010 Jeff Brown <jeffbrown@google.com> am 14bc6b5d: am 09340a4b: Merge "Replace epoll() with poll() and rename PollLoop to Looper." into gingerbread

Merge commit '14bc6b5d0677e5c454a67775c852f90389bb4567'

* commit '14bc6b5d0677e5c454a67775c852f90389bb4567':
Replace epoll() with poll() and rename PollLoop to Looper.
59abe7e0909bf4b7bf7b9601e1e40a05f6d4fd8a 14-Sep-2010 Jeff Brown <jeffbrown@google.com> Replace epoll() with poll() and rename PollLoop to Looper.

As part of this change, consolidated and cleaned up the Looper API so
that there are fewer distinctions between the NDK and non-NDK declarations
(no need for two callback types, etc.).

Removed the dependence on specific constants from sys/poll.h such as
POLLIN. Instead looper.h defines events like LOOPER_EVENT_INPUT for
the events that it supports. That should help make any future
under-the-hood implementation changes easier.

Fixed a couple of compiler warnings along the way.

Change-Id: I449a7ec780bf061bdd325452f823673e2b39b6ae
ndroid.mk
ooper.cpp
ollLoop.cpp
ests/Android.mk
ests/Looper_test.cpp
ests/PollLoop_test.cpp
055a7926e651e3f99aedceda3b18bb6ea53d7769 13-Sep-2010 Jeff Brown <jeffbrown@google.com> am 0f0541e4: am b88102f5: Input dispatcher ANR handling enhancements.

Merge commit '0f0541e40cfef51eb5c3769e53c1aa853b53aaf6'

* commit '0f0541e40cfef51eb5c3769e53c1aa853b53aaf6':
Input dispatcher ANR handling enhancements.
a665ca805c7ecda89ef95658f4d1c09ba6bd7f2e 08-Sep-2010 Jeff Brown <jeffbrown@google.com> Input dispatcher ANR handling enhancements.

This change is essentially a rewrite of the main input dispatcher loop
with the target identification folded in. Since the input dispatcher now
has all of the window state, it can make better decisions about
when to ANR.

Added a .5 second deadline for processing app switch keys. This behavior
predates Gingerbread but had not previously been ported.

Fixed some timing inaccuracies in the ANR accounting that could cause
applications to ANR sooner than they should have.

Added a mechanism for tracking key and motion events that have been
dispatched to a window so that appropriate cancelation events can be
synthesized when recovering from ANR. This change helps to keep
applications in sync so they don't end up with stuck buttons upon
recovery from ANRs.

Added more comments to describe the tricky parts of PollLoop.

Change-Id: I13dffca27acb436fc383980db536abc4d8b9e6f1
ollLoop.cpp
4181bd66fc4af4e347b47b3d41a5ca69f81a4ccb 10-Sep-2010 Dianne Hackborn <hackbod@google.com> am 510951e9: am a8512a71: Always set the scheduling group when starting a new thread.

Merge commit '510951e98bdb861130f38c087956cd05e0b41dcd'

* commit '510951e98bdb861130f38c087956cd05e0b41dcd':
Always set the scheduling group when starting a new thread.
9c82c48d52edb722cc3991ef3c0ad5f07aa12fea 10-Sep-2010 Dianne Hackborn <hackbod@google.com> Always set the scheduling group when starting a new thread.

Change-Id: Ia33acf13fc3752707f3819928c36315e223fa1bd
hreads.cpp
16ead4738c796e6a44188f75a15d78b997f41eaf 08-Sep-2010 Kenny Root <kroot@google.com> am 2a08e2a9: am a19ef306: Revert "Free created FileMap when uncompressing files"

Merge commit '2a08e2a9f881d06a03e36367585137e05706f592'

* commit '2a08e2a9f881d06a03e36367585137e05706f592':
Revert "Free created FileMap when uncompressing files"
dc2d840ff76b406131cf0ba8f133778eeabffeab 08-Sep-2010 Kenny Root <kroot@google.com> Revert "Free created FileMap when uncompressing files"

This reverts commit 52b8235238fb4d8cf141020cc1ae33880929dc3f.

munmap() on a region that overlaps something else (e.g, the ZIP Central
Directory in this case) unmaps those other regions as well making the
ZipFileRO class unhappy. Revert this for now until we can have FileMap
deal with this craziness.
ipFileRO.cpp
c946422d585e92c60fb144ab5c06a102d64bfc96 08-Sep-2010 Dianne Hackborn <hackbod@google.com> am a1205f07: am 2d3739d4: Merge "Modify native ALooper to take an explicit ident." into gingerbread

Merge commit 'a1205f07a6f0c745e8f42f16fe38c06af04143c7'

* commit 'a1205f07a6f0c745e8f42f16fe38c06af04143c7':
Modify native ALooper to take an explicit ident.
45e0acb41acf30a1b7592ea7e695d96aca3ccd3b 08-Sep-2010 Dianne Hackborn <hackbod@google.com> Modify native ALooper to take an explicit ident.

The ALooper API now uses an explicit "identifier" for the integer
that is returned rather than implicitly using the fd. This allows
the APIs that had the fd to be a little more sane.

Change-Id: I8507f535ad484c0bdc4a1bd016d87bb09acd7ff0
ollLoop.cpp
1cce37b477be13c30ba7b0aa4bacc794350ee530 07-Sep-2010 Dianne Hackborn <hackbod@google.com> am 05dff838: am 11bbe200: Hopefully fix the build.

Merge commit '05dff838946abb01caa3c3172cf0f367964a0b6d'

* commit '05dff838946abb01caa3c3172cf0f367964a0b6d':
Hopefully fix the build.
3d2bca9abdf509d31fb4bf4a00ec7282f41f8da8 07-Sep-2010 Dianne Hackborn <hackbod@google.com> am b8bcfed5: am f703b77c: Merge "Add system property to turn off scheduling groups." into gingerbread

Merge commit 'b8bcfed5524a37ee51e3f1129f1df91bc4a59cb4'

* commit 'b8bcfed5524a37ee51e3f1129f1df91bc4a59cb4':
Add system property to turn off scheduling groups.
bb39b9f17b0a9b6ecf2087b8454730ba6ac8b876 07-Sep-2010 Dianne Hackborn <hackbod@google.com> Hopefully fix the build.

Change-Id: Id8cd92c0895c9939e1386ef488bd1309a3be3568
hreads.cpp
7b0d45c3465304ccdd29ad20f43270ffd5a6aec0 04-Sep-2010 Dianne Hackborn <hackbod@google.com> Add system property to turn off scheduling groups.

Do this:

adb shell setprop debug.sys.noschedgroups 1

Change-Id: I6e06a74205fd45ee1526ce71fe33944465d39984
hreads.cpp
757a86752fb5e81ac2a5ba86eae2db5ccd69d2e5 03-Sep-2010 Kenny Root <kroot@google.com> am 8d5250c6: am 2e246549: Merge "Add better debug output for ResourceType errors" into gingerbread

Merge commit '8d5250c601504da7a7fde3a3fd7b1c51335becdf'

* commit '8d5250c601504da7a7fde3a3fd7b1c51335becdf':
Add better debug output for ResourceType errors
45162448b31921a3ec61d9910f521b46266f1970 02-Sep-2010 Kenny Root <kroot@google.com> Add better debug output for ResourceType errors

An error code is returned as -ESOMETHING, but the debug code was
printing out 0x%08x for these codes making -74 print out as 0xffffffb5
which is kind of silly.

Change-Id: I7d77fb3da2e146845949f121404f662b47288e61
esourceTypes.cpp
b940c7e90115e5756c2872d3fb84a22cdba3dca0 28-Aug-2010 Kenny Root <kroot@google.com> am 8e724905: am ad6731b0: Merge "Add debugging to ZipFileRO" into gingerbread

Merge commit '8e724905261bf4913bac75adc64fb08ed5ba8b7d'

* commit '8e724905261bf4913bac75adc64fb08ed5ba8b7d':
Add debugging to ZipFileRO
e0573a4ad66333ae36ea295b47da5101726fb6f5 27-Aug-2010 Kenny Root <kroot@google.com> Add debugging to ZipFileRO

Some assets are failing to read from ZIP files. This adds a bit more
debugging to figure out what's going on.

Change-Id: Id90e10546c54c85069a34478fbc28bc2523bda5d
ipFileRO.cpp
8d7fcccef6ab20d94d1a566f8224f4e7348e77c4 24-Aug-2010 Kenny Root <kroot@google.com> am b90b9d54: am 6be23712: Merge "Free created FileMap when uncompressing files" into gingerbread

Merge commit 'b90b9d54eb6bbc3a4045ff0bf46d3366822e835e'

* commit 'b90b9d54eb6bbc3a4045ff0bf46d3366822e835e':
Free created FileMap when uncompressing files
24b2aee9ca5bf8a119569ca052908d0d3509cb9c 21-Aug-2010 Kenny Root <kroot@google.com> am 821afa9a: am 54d41379: Merge "Add OBB flags to support overlays" into gingerbread

Merge commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973'

* commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973':
Add OBB flags to support overlays
cd9ce313ddc9aa326271bf4ecea7af9b26e73b79 20-Aug-2010 Kenny Root <kroot@google.com> Free created FileMap when uncompressing files

Change-Id: Ice22c4ecb7c129b74bf60cd66ae79e110b017a4a
ipFileRO.cpp
28e9b9f2435b9b73addddb092c66a8da6112b350 12-Aug-2010 Kenny Root <kroot@google.com> Add OBB flags to support overlays

* Add flags field in OBB footer to support overlays.

* Remove unused 'crypto' and 'filesystem' fields in obbtool (could
later be supported in the "flags" field of the OBB footer).

* Add notes to document OBB classes before shipping.

Change-Id: I386b43c32c5edef55210acb5d3322639c08010ba
bbFile.cpp
8264321e31189e9ec80ce9e0c2b8e6554093f1b0 11-Aug-2010 Kenny Root <kroot@google.com> am 80328ba0: am 8ea71511: Merge "Initial tool for OBB manipulation" into gingerbread

Merge commit '80328ba09606bd0825d7d4c9a4f213d1de09e53a'

* commit '80328ba09606bd0825d7d4c9a4f213d1de09e53a':
Initial tool for OBB manipulation
1dfd9f8a97adc970656c15d1950865a4cffe5e7b 19-Jul-2010 Kenny Root <kroot@google.com> Initial tool for OBB manipulation

Add "obbtool" host command for adding, removing, and querying Opaque
Binary Blob (OBB) information from a file.

Change-Id: Id2ac41e687ad2a500c362616d6738a8ae7e8f5c3
bbFile.cpp
f09b0ae832569ad5e32728c5bb74c93f65c2470d 11-Aug-2010 Dianne Hackborn <hackbod@google.com> am 679ac09a: am a5ae50cd: Merge "More native work." into gingerbread

Merge commit '679ac09a5c22175354f3a04b28456b323839530e'

* commit '679ac09a5c22175354f3a04b28456b323839530e':
More native work.
c3ef3ae5521b2bd5bac2a3da6666ac324d5ce930 04-Aug-2010 Dianne Hackborn <hackbod@google.com> More native work.

Implement save/restore of state, and add native APIs for
configuration information.

Change-Id: I2a3ddc2ba605db58d7c8b2b31b9215fb323f90b5
ssetManager.cpp
404b6473e9a5b68f9372f5ba70e7c1195661dcda 07-Aug-2010 Kenny Root <kroot@google.com> am d7ce227b: am 818490ab: Fix String8::operator+

Merge commit 'd7ce227bcb854f048124bbc487eba844c6599142'

* commit 'd7ce227bcb854f048124bbc487eba844c6599142':
Fix String8::operator+
aa966638b9428e78837eff93ef29f10f31193256 06-Aug-2010 Kenny Root <kroot@google.com> Fix String8::operator+

The LHS was ignored when using:
String8 + String8
String8 + (const char*)

Add unit tests for above.

Bug: 2898473
Change-Id: Ic8fe7be668b665c36aaaa3fc3c3ffdfff0fbba25
ests/Android.mk
ests/String8_test.cpp
8c16a393c97417f1caa07f0710ffc00236cb07c1 05-Aug-2010 Kenny Root <kroot@google.com> am aec3e36f: am 2d817f75: Free scanBuf in ZipFileRO

Merge commit 'aec3e36fd4f8cdcc53110bbcd7f0afa20bf315d4'

* commit 'aec3e36fd4f8cdcc53110bbcd7f0afa20bf315d4':
Free scanBuf in ZipFileRO
8f20e5e540e9d2be8db31e2a9d8eb04a5621b494 05-Aug-2010 Kenny Root <kroot@google.com> Free scanBuf in ZipFileRO

In the success case, the 65kB scanBuf was not freed!

Also, get rid of annoying complaints about ssize_t from printf in error
cases.

Change-Id: If154ac19bf47637f898b4ec8c8e27c9a073a7b81
ipFileRO.cpp
8aea3f3b94e14b5f8b9ca288ddaaeaf7d7d8898a 29-Jul-2010 Christopher Tate <ctate@google.com> am 06abd0a6: am 571180c4: Merge "Attempt to fix the SDK build" into gingerbread

Merge commit '06abd0a6a833beda1c0e68aed44912d145745a42'

* commit '06abd0a6a833beda1c0e68aed44912d145745a42':
Attempt to fix the SDK build
6c6a3fbd9db0d03476953a08e8310e5d854814ac 29-Jul-2010 Christopher Tate <ctate@google.com> Attempt to fix the SDK build

On the assumption that the local min() function declaration is in
conflict with some 'min' #define floating around, rename the local
function to min_of().

Change-Id: I62aa27f213c6093cc78805de611cf4aa75f0eef2
treamingZipInflater.cpp
2c8c2713c1a2e58c901be74fb5d5a99fae56fa4b 29-Jul-2010 Chris Tate <ctate@android.com> am 4dc8ead1: am 7b40518e: Merge "Change unistd.h to stddef.h to be correct" into gingerbread

Merge commit '4dc8ead1b4e63165c0a9e65adfbe46159758947a'

* commit '4dc8ead1b4e63165c0a9e65adfbe46159758947a':
Change unistd.h to stddef.h to be correct
0832a31d54073dd2bef2eb2c12c376dcd04bd3d5 29-Jul-2010 Kenny Root <kroot@google.com> Change unistd.h to stddef.h to be correct

size_t should be defined through inclusion of stddef.h instead of unistd.h

Change-Id: Ieaadacfca1e1c44c2533ea95f73fc060c1519b52
treamingZipInflater.cpp
e8642c0e59756da2242f6f91011981f822fee32b 29-Jul-2010 Kenny Root <kroot@google.com> am 47cf709a: am 8c5d9430: Merge "Add unistd.h for size_t typedef to fix sim-eng" into gingerbread

Merge commit '47cf709aa3c07d2573340187edb5e11ea75824b1'

* commit '47cf709aa3c07d2573340187edb5e11ea75824b1':
Add unistd.h for size_t typedef to fix sim-eng
937cd1b70785ee221f7a883ea362a2fbbbbdfd1a 29-Jul-2010 Kenny Root <kroot@google.com> Add unistd.h for size_t typedef to fix sim-eng

Change-Id: Ida4f1742547f39539b601f13182c722aa7cf863e
treamingZipInflater.cpp
01d1669b89854a5b6275a6aa0cd302efbdd07f2f 29-Jul-2010 Christopher Tate <ctate@google.com> am 1de9f490: am bae6fe24: Merge "Support streaming of compressed assets > 1 megabyte" into gingerbread

Merge commit '1de9f490b5c3f293b3748be3d4ccf3f78cdf460b'

* commit '1de9f490b5c3f293b3748be3d4ccf3f78cdf460b':
Support streaming of compressed assets > 1 megabyte
a45a8008c62ec8583709c87e30c84e09214f46cf 26-Jul-2010 Christopher Tate <ctate@google.com> Support streaming of compressed assets > 1 megabyte

Compressed assets larger than one megabyte are now decompressed on demand
rather than being decompressed in their entirety and held in memory. Reading
the data in order is relatively efficient, as is seeking forward in the stream.
Seeking backwards is supported, but requires reprocessing the compressed data
from the beginning, so is very inefficient.

In addition, the size limit on compressed assets has been eliminated.

Change-Id: I6e68247957e6c53e7e8ba70d12764695f1723bad
ndroid.mk
sset.cpp
treamingZipInflater.cpp
cfa6d9827827b19ec34239de23157eda5974ec83 16-Jul-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of f7adbe10 to master

Change-Id: I898a5e53b180adaee2337c0c0b9896c799d056e7
0a128e3cbef25e17aa7280928e682801041fa55f 16-Jul-2010 Jeff Brown <jeffbrown@google.com> Fix bug with phantom input windows.

Add dumpsys integration for the native input dispatcher.
Add some InputDevice API stubs.
Add an appendFormat helper method to String8 for printf style
string formatting mainly for debugging purposes.
Use generic ArrayList<WindowState> everywhere in WindowManagerService
to eliminate unnecessary casts all over.

Change-Id: I9d1e3bd90eb7222d10620200477f11b7bfd25e44
tring8.cpp
a903001e3cf392ba42bb124dfe82b94dea25e18f 15-Jul-2010 Jeff Brown <jeffbrown@google.com> am d1313da5: am eb6e0df1: Don\'t build framework tests for simulator target.

Merge commit 'd1313da5999e06be16e52527cfba443f66b333a1'

* commit 'd1313da5999e06be16e52527cfba443f66b333a1':
Don't build framework tests for simulator target.
a50ee3ecb377c69758254a0af9542bb64ecc5b71 15-Jul-2010 Jeff Brown <jeffbrown@google.com> Don't build framework tests for simulator target.

Change-Id: I70f29c7eb307e4f3ec5702f4eb9d97b4342e2f36
ests/Android.mk
94eed383c93be67e497d736fd81c360974d520b8 14-Jul-2010 Jeff Brown <jeffbrown@google.com> am 89ee578b: am fd035829: Add initial gamepad support.

Merge commit '89ee578b7053d27a50922f82feb94bf6054b330c'

* commit '89ee578b7053d27a50922f82feb94bf6054b330c':
Add initial gamepad support.
8575a87b0d61d21c286321afdf193f4fac53d681 01-Jul-2010 Jeff Brown <jeffbrown@google.com> Add initial gamepad support.

Change-Id: I0439648f6eb5405f200e4223c915eb3a418b32b9
ndroid.mk
d441a0ca24fbf05a091f4db998a9d58b19b3cda5 12-Jul-2010 Kenny Root <kroot@google.com> am ceb8465e: am 87bb1857: Merge changes I2337051b,I19b426cb into gingerbread

Merge commit 'ceb8465e974ba5fa971ffe1b5b74e94a1bd53f97'

* commit 'ceb8465e974ba5fa971ffe1b5b74e94a1bd53f97':
Tweak ObbFile class
Allow things that can install packages to set Obb paths
9baa2c7a446cde0f92320c1aeb71396b7b0f3cf5 12-Jul-2010 Kenny Root <kroot@google.com> Merge changes I2337051b,I19b426cb into gingerbread

* changes:
Tweak ObbFile class
Allow things that can install packages to set Obb paths
fa59afb8631b24ebd9cca86c5a8e55f5ac8a1d36 12-Jul-2010 Kenny Root <kroot@google.com> Tweak ObbFile class

* Move error messages around to clarify the errors.

* Add extra error check when reading a file.

* Seek to the end of a file when writing the signature so the users of
the API don't have to remember to do it.

Change-Id: I2337051b9f9fa8147c5900237deec790dcd92436
bbFile.cpp
ests/ObbFile_test.cpp
895b3d0bdd9508472d98da2f6fe8a2daa059d40d 09-Jul-2010 Dianne Hackborn <hackbod@google.com> am 49159f07: am 74bf59b4: Merge "Add new glue code for writing native apps." into gingerbread

Merge commit '49159f0748c704e53a7bd754f26113d9ab844a97'

* commit '49159f0748c704e53a7bd754f26113d9ab844a97':
Add new glue code for writing native apps.
8d3ee58899d4ca3c9edc94b6e142aae6caad827c 09-Jul-2010 Kenny Root <kroot@google.com> am d481cdd4: am c9535de8: Merge "Add OBB file helper class" into gingerbread

Merge commit 'd481cdd4c0305f8afd857fe3ec3fbf189b744370'

* commit 'd481cdd4c0305f8afd857fe3ec3fbf189b744370':
Add OBB file helper class
3c5d125ed796dbecdd80fa2c03e04ff9b1d752e4 07-Jul-2010 Dianne Hackborn <hackbod@google.com> Add new glue code for writing native apps.

This factors out the boiler-plate code from the sample
app to a common glue code that can be used for everyone
writing this style of app: a dedicated app thread that
takes care of waiting for events and processing them.

As part of doing this, ALooper has a new facility to allow
registration of fds that cause ALooper_pollOnce() to return
the fd that has data, allowing the app to drive the loop
without callbacks. Hopefully this makes some people feel better. :)

Also do some other cleanup of the ALooper API, plus some
actual documentation.

Change-Id: Ic53bd56bdf627e3ba28a3c093faa06a92be522b8
ollLoop.cpp
ests/PollLoop_test.cpp
b94a9a668f0e33dd93594abb08f448e6c915981f 01-Jun-2010 Kenny Root <kroot@google.com> Add OBB file helper class

ObbFile is a binary blob that will be used in packaging large files
with smaller APKs.

Change-Id: Ib1594346cfa2f49113de6565af77c24efbd89d63
ndroid.mk
bbFile.cpp
ests/Android.mk
ests/ObbFile_test.cpp
747f65e77a025306c09fd9fe88d08f32ee93d25d 07-Jul-2010 Dianne Hackborn <hackbod@google.com> am e24901d3: am 68267415: Add new native Looper API.

Merge commit 'e24901d3adb28fff72821d4e8e2ccc25b2184550'

* commit 'e24901d3adb28fff72821d4e8e2ccc25b2184550':
Add new native Looper API.
efa10850665c8d60e562f3a488ae65e225614707 03-Jul-2010 Dianne Hackborn <hackbod@google.com> Add new native Looper API.

This allows us to avoid exposing the file descriptor of
the event queue; instead, you attach an event queue to
a looper. This will also should allow native apps to be
written without the need for a separate thread, by attaching
the event queue to the main thread's looper and scheduling
their own messages there.

Change-Id: I38489282635895ae2cbfacb88599c1b1cad9b239
ollLoop.cpp
e780fc9d96f5ce355796b31629591c63dd663a23 17-Jun-2010 Jeff Brown <jeffbrown@google.com> am 42bb545a: am 5c225b16: Even more native input dispatch work in progress.

Merge commit '42bb545a54d89f0ddbb230d7a01ea4210c0f6c00'

* commit '42bb545a54d89f0ddbb230d7a01ea4210c0f6c00':
Even more native input dispatch work in progress.
f4a4ec2063dfd28e04bbfe712f67acee4bdc8e37 16-Jun-2010 Jeff Brown <jeffbrown@google.com> Even more native input dispatch work in progress.

Added more tests.
Fixed a regression in Vector.
Fixed bugs in pointer tracking.
Fixed a starvation issue in PollLoop when setting or removing callbacks.
Fixed a couple of policy nits.

Modified the internal representation of MotionEvent to be more
efficient and more consistent.

Added code to skip/cancel virtual key processing when there are multiple
pointers down. This helps to better disambiguate virtual key presses
from stray touches (such as cheek presses).

Change-Id: I2a7d2cce0195afb9125b23378baa94fd2fc6671c
ollLoop.cpp
ectorImpl.cpp
ests/PollLoop_test.cpp
ests/TestHelpers.h
6f19e9c1c274b1532f19a42d8084a400ae055ed2 15-Jun-2010 Jeff Brown <jeffbrown@google.com> am e0e5da0d: am 96e59eb8: Merge "Support for multiple tests" into gingerbread

Merge commit 'e0e5da0d648f4167e2a12ea02f4794f81a057da7'

* commit 'e0e5da0d648f4167e2a12ea02f4794f81a057da7':
Support for multiple tests
f69280ef72f1adfcdb7bfef001e4935344c410c0 15-Jun-2010 Jeff Brown <jeffbrown@google.com> Support for multiple tests

The build system enforces some invariants that were being ignored
before.

Change-Id: Ie7675042af7f961a507386c13b2a0b592b591af8
ests/Android.mk
157a2647fc8d322a92b0f5fac1e03699cfe242d1 14-Jun-2010 Jeff Brown <jeffbrown@google.com> am 4166aec5: am 28a6c8e9: am d890cbf7: Remove PollLoop from host build.

Merge commit '4166aec567b6fa4aa725a20d7c0a6dc5866c9f7b'

* commit '4166aec567b6fa4aa725a20d7c0a6dc5866c9f7b':
Remove PollLoop from host build.
beb2359b9be3bfa1f6406ec9bd0d4d68f9a67af0 14-Jun-2010 Jeff Brown <jeffbrown@google.com> Remove PollLoop from host build.

We can't build (and we don't need) PollLoop in the SDK on all platforms.

Change-Id: I3b0f327bbb8bc58b9b8630b0161cf360403fea68
ndroid.mk
04c1a8cdec3d0b27ce7029d79c96c3b4be14ca4e 14-Jun-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 9e660c82 to master

Change-Id: Ic4bd85cbaa5b9a10dcb474a0dad46490bf967e43
e839a589bf582568cf220c1040ed93b948e6e362 23-Apr-2010 Jeff Brown <jeffbrown@google.com> Native input dispatch rewrite work in progress.

The old dispatch mechanism has been left in place and continues to
be used by default for now. To enable native input dispatch,
edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy.

Includes part of the new input event NDK API. Some details TBD.

To wire up input dispatch, as the ViewRoot adds a window to the
window session it receives an InputChannel object as an output
argument. The InputChannel encapsulates the file descriptors for a
shared memory region and two pipe end-points. The ViewRoot then
provides the InputChannel to the InputQueue. Behind the
scenes, InputQueue simply attaches handlers to the native PollLoop object
that underlies the MessageQueue. This way MessageQueue doesn't need
to know anything about input dispatch per-se, it just exposes (in native
code) a PollLoop that other components can use to monitor file descriptor
state changes.

There can be zero or more targets for any given input event. Each
input target is specified by its input channel and some parameters
including flags, an X/Y coordinate offset, and the dispatch timeout.
An input target can request either synchronous dispatch (for foreground apps)
or asynchronous dispatch (fire-and-forget for wallpapers and "outside"
targets). Currently, finding the appropriate input targets for an event
requires a call back into the WindowManagerServer from native code.
In the future this will be refactored to avoid most of these callbacks
except as required to handle pending focus transitions.

End-to-end event dispatch mostly works!

To do: event injection, rate limiting, ANRs, testing, optimization, etc.

Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
ndroid.mk
ollLoop.cpp
ool.cpp
topWatch.cpp
ectorImpl.cpp
ests/Android.mk
ests/PollLoop_test.cpp
ests/TestHelpers.h
b3ed29c713b4bedf27a38ef58578d8ece6d38cca 11-Jun-2010 Andreas Huber <andih@google.com> am b9d7b46b: am 8f864513: Merge "Fix String8 to free its memory only after assignment operations based on pointers are finished in case that pointer referred to the string\'s original contents." into kraken
a637eb48690eb253903dd07e037e63f60a2fd6f9 10-Jun-2010 Andreas Huber <andih@google.com> Fix String8 to free its memory only after assignment operations based on pointers are finished in case that pointer referred to the string's original contents.

Change-Id: I6961f3cf10ba3b728579ea63262db750a4cf8577
tring8.cpp
c91e0eda56159c19f1b8a36b8ba144ee73221b1a 08-Jun-2010 Kenny Root <kroot@google.com> Add invariant check for stylesString size

It was possible for stylesStrings to claim to start past the end of the
data area thereby making mStringPoolSize larger than the data area.

Change-Id: Ibc4d5b429e3a388516135801c8abc3681daae291
esourceTypes.cpp
615f5d64dbdeb525688d8367af35590818ce7a48 08-Jun-2010 Kenny Root <kroot@google.com> Range checking for ResTable_map

Correct previous offset change and get ready for safe-iop.

Change-Id: Ib276c726f32b0711a72f47d3263eb21640e5a800
esourceTypes.cpp
61c22be593347b5dd63feec449f5ecd0bd8ae08a 08-Jun-2010 Kenny Root <kroot@google.com> Improve checking in aapt dump

The aapt dump reading had less error checking than the actual parsing,
so this change brings it more into parity so that bad APKs don't crash
"aapt dump"

Change-Id: Ib30e63e41be5c652645c4aa0de580a87b184529d
esourceTypes.cpp
bad51959c5721768db966ebbf27ef4385cb8d57a 04-Jun-2010 Konstantin Lopyrev <klopyrev@google.com> Fix 1684100: Making sure that empty package, type and resource ids are not accepted.

Change-Id: I4c94877e4312e9a5b4d22c8625069ca056c62e40
esourceTypes.cpp
d4066a4ac50cda61bedd97b5f6d29cf176e04127 23-Apr-2010 Kenny Root <kroot@google.com> ZipUtilsRO rewrite based on Dalvik Zip rewrite

Change the way zip archives are handled. This is necessary to deal with
very large (~1GB) APK files, for which our current approach of mapping
the entire file falls over.

We now do the classic scavenger hunt for the End Of Central Directory
magic on a buffer of data read from the file, instead of a memory-mapped
section. We use what we find to create a map that covers the Central
Directory only.

If the caller is interested in unpacking the file contents, we have to
do an additional file read to discover the size of the Local File Header
section so we can skip past it.

This is based on Change I745fb15abb in the dalvik tree. Both
implementations share a common ancestry, but the cost of unifying them
outweighs the benefits of wrapping C calls.

Change-Id: Iddacb50fe913917c2845708a530872d65fdbe620
ssetManager.cpp
ipFileCRO.cpp
ipFileRO.cpp
7dd2bb84128d9026f045999b94644fcda772de52 07-May-2010 Dan Egnor <egnor@google.com> am ca48c88c: am 8a8658a5: Merge "Make static versions of libutils and libbinder." into froyo

Merge commit 'ca48c88c3d5733c4405a2fc4f7d9bb7fbba3d43f' into kraken

* commit 'ca48c88c3d5733c4405a2fc4f7d9bb7fbba3d43f':
Make static versions of libutils and libbinder.
386a332b4f70718cccb08d5511d66e9f4f5bd409 06-May-2010 Dan Egnor <egnor@google.com> Make static versions of libutils and libbinder.

Fix some small static-initialization-order issues (and a static-
initializers-missing issue) that result from doing so. The static
libraries don't actually get used for anything real at the moment --
they're used for perf tests of bug 2660235.

Bug: 2660235
Change-Id: Iee2f38f79cc93b395e8d0a5a144ed92461f5ada0
ndroid.mk
tring8.cpp
c93a781c2492def222093e46ddc252b09e333410 24-Apr-2010 Dianne Hackborn <hackbod@google.com> New xlarge screen size.

Not complete, only for experimentation at this point.

This includes a reworking of how screen size configurations are matched,
so that if you are on a larger screen we can select configurations for
smaller screens if there aren't any exactly matching the current screen.

The screen size at which we switch to xlarge has been arbitrarily
chosen; the compatibility behavior has not yet been defined.

Change-Id: I1a33b3818eeb51a68fb72397568c39ab040a07f5
esourceTypes.cpp
c85e12e07559b7a36f6b831112a7e677a4f83ceb 31-Mar-2010 Dianne Hackborn <hackbod@google.com> Revert "fix [2542425] memory leak during video recording"

This reverts commit 544592e14f8d7643238e40ba9879727497900f35.
ectorImpl.cpp
77e26d6822bdba470c4704440fdafcc256475b4e 31-Mar-2010 Mathias Agopian <mathias@google.com> fix [2542425] memory leak during video recording

[Sorted|Keyed]Vector<TYPE> would leak their whole storage when resized
from the end and TYPE had trivial dtor and copy operators.

Change-Id: I8555bb1aa0863df72de27d67ae50e20706e90cf5
ectorImpl.cpp
caeddc7236a41bc51e60d54f5fa0e67cddd7aba6 29-Mar-2010 Mathias Agopian <mathias@google.com> fix [2542425] memory leak during video recording

Vector::sort() is using _do_copy() incorrectly; _do_copy() calls the
copy constructor, not the assignment operator, so we need to destroy
the "destination" before copying the item.

Change-Id: Iaeeac808fa5341a7d219edeba4aa63d44f31473c
ectorImpl.cpp
82fecb01df67f5e3321618df29079b9ce56a30e4 10-Mar-2010 Dianne Hackborn <hackbod@google.com> Add ability for some manifest attributes to reference resources.

This loosens our restriction on many manifest attributes requiring
literal string values, to allow various ones to use values from
resources. This is only allowed if the resource value does not change
from configuration changes, and the restriction is still in place
for attributes that are core to security (requesting permissions) or
market operation (used libraries and features etc).

Change-Id: I4da02f6a5196cb6a7dbcff9ac25403904c42c2c8
esourceTypes.cpp
6687fb103da248213a31c859a5f424e4feccfb25 04-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix some bugs.

Bug #2376231: Apps lose window focus (and back key causes ANR) if the
lock screen is dismissed while the phone is in landscape mode

This is another case where we weren't recomputing the focused window
after changing the visibility policy.

bug #2479958: Investigate source of "Resources don't contain package
for resource number 0x7f0a0000"

Um, okay, so it turns out there were bugs all over the place where
we would load an XML resource from a another application, but not
use the Resources for that application to retrieve its resources...!
I think the only reason any of this stuff was working at all was
because it typically only cared about retrieving the resource
identifiers of the items (it would look up the values later).

Bug #2401082: Passion ERE26 monkey crash - InputMethodManagerService

Add some null checks.
esourceTypes.cpp
8eca036d24f2e7865ab5ccb057b043e2c32b75bf 02-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2448075: aapt doesn't fix up activity-alias android:targetActivity links

And related:

- The aapt tool now sets a resource configurations sdk level to match any configs
that have been set (for example if you specify density your sdk level will be
at least 4).
- New option to modify the targetPackage attribute of instrumentation.
- Clean up of aapt options help.
- Fix of UI type values to leave 0 for "unspecified".
- Make the UI mode config APIs public.
esourceTypes.cpp
dc7caf18da8386ad4f02176bf8509d95e5dba6e4 02-Mar-2010 Ficus Kirkpatrick <ficus@android.com> Demote the famous ResourceTypes warning to LOGV.

It is spamming the log bigtime and can be promoted back to LOGW
or worse by whoever decides to actually investigate the bug.

Change-Id: I72d950155378f641ebdfbacabae774f5736a52bc
esourceTypes.cpp
9e333ab42c5ca09632f56cd5d8e5349e06a632b7 23-Feb-2010 Kenny Root <kroot@google.com> Use UTF-8 strings to avoid duplicate caching, part 1

StringBlock instances containing UTF-8 strings use a cache to convert
into UTF-16, but using that cache and then using a JNI call to NewString
causes the UTF-8 string as well as two copies of the UTF-16 string to
be held in memory. Getting the UTF-8 string directly from the StringPool
eliminates one copy of the UTF-16 string being held in memory.

This is part 1. Part 2 will include ResXMLParser optimizations.

Change-Id: Ibd4509a485db746d59cd4b9501f544877139276c
esourceTypes.cpp
98e71ddaede9a0bfb681fd237bec1f66c6c53193 12-Feb-2010 Mathias Agopian <mathias@google.com> remove a dependency of GraphicBuffer (libui) on Parcel (libbinder).

Add a Flattenable interface to libutils which can be used to flatten
an object into bytestream + filedescriptor stream.
Parcel is modified to handle Flattenable. And GraphicBuffer implements
Flattenable.

Except for the overlay classes libui is now independent of libbinder.
ndroid.mk
lattenable.cpp
0d88e7a8d7c436e8375a749aac77d34eb95356c8 12-Feb-2010 Kenny Root <kroot@google.com> Totally remove Unicode.cpp and rely on ICU

Unicode.cpp used a packed data table for character data that essentially
duplicated ICU's functionality.

Change-Id: Ia68fe4ac94e89dc68d9a3f45f33f6e648a5500b7
ndroid.mk
haracterData.h
nicode.cpp
196e3207345baa4ba5af93646f2ca1b67a438aeb 12-Feb-2010 Kenny Root <kroot@google.com> Excise code from Unicode.cpp that was dead

Remove some utility functions for discovering character data
that ICU probably took over a while ago.

Change-Id: I97abe4de2f51eb2bf48679941258bc501184c3dc
haracterData.h
nicode.cpp
ccb5b89029ca3f653fbfa32a7b6ed82bf227541c 10-Dec-2009 Kenny Root <kroot@google.com> Add string resource type inspection

Allows "aapt dump --values resource" to print out whether a string in a
ResStringPool is in UTF-8 or UTF-16 encoding.

Change-Id: I6478884a70a3b46fee862dece6cb33454fc34843
esourceTypes.cpp
d0aeccebe2d1539a9f0b5f19beb6c272a60d3cc6 09-Dec-2009 Dianne Hackborn <hackbod@google.com> Maybe really fix windows build.
hreads.cpp
c5b138995e68910cfa95f88f12a1c69a102aa997 09-Dec-2009 Dianne Hackborn <hackbod@google.com> Hopefully fix Windows build
hreads.cpp
eb318fd88d16053010da554ba565eaaf3355a58e 08-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I129483f8 into eclair-mr2

* changes:
Optional use of UTF-8 strings in resource bundles
8c6cedc9bc9a4b69616a79a95449f6f6b08c7bf1 08-Dec-2009 Dianne Hackborn <hackbod@google.com> Propagate background scheduling class across processes.

This is a very simply implementation: upon receiving an IPC, if the handling
thread is at a background priority (the driver will have taken care of
propagating this from the calling thread), then stick it in to the background
scheduling group. Plus an API to turn this off for the process, which is
used by the system process.

This also pulls some of the code for managing scheduling classes out of
the Process JNI wrappers and in to some convenience methods in thread.h.
hreads.cpp
92f5984d2c2cd73b6b9f68c02c147877d1e2fc46 04-Dec-2009 Kenny Root <kroot@google.com> Optional use of UTF-8 strings in resource bundles

Allows the use of UTF-8 for packing resources instead of the
default of UTF-16 for Java. When strings are extracted from the
ResStringPool, they are converted to UTF-16 and the result is
cached for subsequent calls.

When using aapt to package, add in the "-8" switch to pack the
resources using UTF-8. This will result in the value, key, and
type strings as well as the compiled XML string values taking
significantly less space in the final application package in
most scenarios.

Change-Id: I129483f8b3d3b1c5869dced05cb525e494a6c83a
esourceTypes.cpp
tring16.cpp
tring8.cpp
7b92d7ec36a01c3f95eab000581db3360596f61d 20-Nov-2009 Dianne Hackborn <hackbod@google.com> Debugging for issue #2228381 android.view.InflateException

Binary XML file line #37: Error inflating class <unknown> after adding a secondary account

Now that I have these debug logs, I want to keep them since they will make
debugging these kinds of issues a lot easier in the future. (Note in this
case there was no problem in the framework.)

Change-Id: If2b0bbeda4706b7c5dc1ba4a5db04b74f40e1543
esourceTypes.cpp
e7e1009636b8043f9923b2274db766636dd9e40a 01-Oct-2009 Christopher Tate <ctate@android.com> Turn off most of the backup-related debug logging

The core logging in BackupManagerService and in the Google backup transport are
still enabled at this point.

Change-Id: I10abfa565bbd1097dd3631051b6aca163e4af33a
ackupData.cpp
a4f58892d4d23dc6957becab3504522cb033de46 28-Sep-2009 Doug Zongker <dougz@android.com> fix "pacakge" typo in error log message
esourceTypes.cpp
6e472890effc63430d0ab680051c10cf2cf3cdbe 22-Sep-2009 Christopher Tate <ctate@android.com> Clear the device's data from the transport when backup is disabled

Turning off backup in the Settings UI constitutes an opt-out of the whole
mechanism. For privacy reasons we instruct the backend to wipe all of the data
belonging to this device when the user does this. If the attempt fails it is
rescheduled in the future based on the transport's requestBackupTime()
suggestion. If network connectivity changes prompt the transport to indicate a
backup pass is appropriate "now," any pending init operation is processed before
the backup schedule is resumed.

The broadcasts used internally to the backup manager are now fully protected;
third party apps can neither send nor receive them.

(Also a minor logging change; don't log 'appropriate' EOF encountered during
parsing of a backup data stream.)
ackupData.cpp
cfbb735f841ff93d36e92845699b186ac0973a88 20-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #1862317: Browser does not appear to honor anchors (#es) in links

Also a little improved debugging output of bad resource identifiers.

Change-Id: I054064ef22855608ffd722e4ccf12ce57d1992b2
esourceTypes.cpp
4de4ebf6a25b5cf1819809ffcedea331d79823e0 09-Sep-2009 Mathias Agopian <mathias@google.com> use broadcast() instead of signal() when signaling the condition-variable Thread::RequestExitAndWait() is waiting for

we could have several thread waiting on the condition and they all need to wake-up.
also added a debug "mTid" field in the class, which contains the tid of the thread (as opposed to pthread_t), this
is useful when debugging under gdb for instance.
hreads.cpp
75a3d0a2153b5c63edd3a5c9a2aecd4ac30efa0a 02-Sep-2009 Eric Fischer <enf@google.com> Make it an error to use a bare apostrophe in aapt, and adjust warnings/errors.

In practice, no one ever writes an apostrophe in an aapt string with the
intent of using it to quote whitespace -- they always mean to include a
literal apostrophe in the string and then are surprised when they find
the apostrophe missing. Make this an error so that it is discovered
right away instead of waiting until late in QA or after the strings have
already been sent for translation. (And fix a recently-introduced string
that has exactly this problem.)

Silence the warning about an empty span in a string, since this seems to
annoy people instead of finding any real problems.

Make the error about having a translated string with no base string into
a warning, since this is a big pain when making changes to an application
that has already had some translations done, and the dead translations
should be removed by a later translation import anyway.
esourceTypes.cpp
878d647b5b77f040cdae810e7e05be23a105e1eb 12-Aug-2009 Dianne Hackborn <hackbod@google.com> am b8546001: Merge change 20878 into donut

Merge commit 'b8546001701405a76dad7e6235046e592296fac2'

* commit 'b8546001701405a76dad7e6235046e592296fac2':
Fix issue #2048263: More debugging information
e868513287c50caec4bcc83be3c49e12dfbeac72 12-Aug-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2048263: More debugging information

We now hopefully do better about generating the anr reports, and include
information about the malloc loaded assets in meminfo.
sset.cpp
429db150affcc99b198fa0da52165fde4cd4cc7c 01-Aug-2009 David 'Digit' Turner <digit@google.com> Fix Win32 libutils to get a working SDK build.
hreads.cpp
ff1dcc2cf9043c4d128cf8498b58e956e9ee965f 31-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 25dff70f: Merge change 9039 into donut

Merge commit '25dff70f153529b87f5ad4a92f4de21e8950b1de'

* commit '25dff70f153529b87f5ad4a92f4de21e8950b1de':
Fix #2018814: System cannot correctly render assets with "wrap_content" attribute in QVGA
3945ae5065ec62ed267e1aaf4cfc160c5eb6a79e 30-Jul-2009 Dianne Hackborn <hackbod@google.com> Fix #2018814: System cannot correctly render assets with "wrap_content" attribute in QVGA

It turns out we were not returning the density for anything retrieved from a
TypedArray... which basically means any bitmap references from a layout or style...!!!

This is now fixed.

Also fiddle with the density compatibility mode to turn on smoothing in certain situations,
helping the look of things when they need to scale and we couldn't do the scaling at
load time.
esourceTypes.cpp
c1d7a6ec1e8058135f1058d93811dff55e331276 29-Jul-2009 Joe Onorato <joeo@android.com> Only restore the bits for wallpapers that aren't built in.
ackupData.cpp
1b96719b327c16db024836f91fcba54335e5a96b 29-Jul-2009 Joe Onorato <joeo@android.com> Fix the IOException in wallpaper restore -- the padding isn't required at the end.
ackupData.cpp
351b6f926e06355079669f170a97a729537932ed 22-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 9fc20b0e: Merge change 8126 into donut

Merge commit '9fc20b0e381b5fe00b7049ef357c839cd05a33bf'

* commit '9fc20b0e381b5fe00b7049ef357c839cd05a33bf':
First pass at reworking screen density/size APIs.
60cde60e89373b03f1c645c51f825c7898f62d9e 22-Jul-2009 Dianne Hackborn <hackbod@google.com> First pass at reworking screen density/size APIs.

This changes the names of the directories in aapt, to what you see
in the list of DpiTest resources. Also adds a new "long" configuration
for wide screens, which the platform sets appropriate, and introduces
a new kind of resizeability for not large but significantly larger
than normal screens which may have compatibility issues.
esourceTypes.cpp
89fbf845390322eb486632bae9108191803d4b9e 20-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am aad0fcc9: Merge change 7783 into donut

Merge commit 'aad0fcc9619eb72c18a6afff48ebc9d4011f0f54'

* commit 'aad0fcc9619eb72c18a6afff48ebc9d4011f0f54':
Add "nodpi" density, and expose a bunch of density-related APIs.
b3e8103538c4a487c20238a2da86159381a688d7 17-Jul-2009 Dianne Hackborn <hackbod@google.com> Add "nodpi" density, and expose a bunch of density-related APIs.

Also update the DpiTest app to use nodpi images, and try to have a mode
where it turns off compatibility though it's not quite working.
esourceTypes.cpp
9793c45993a667cc78ee779857daefc20588a045 17-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 3e1663a2: Merge change 7536 into donut

Merge commit '3e1663a2539ff0b939193304cfb601f6b134af7d'

* commit '3e1663a2539ff0b939193304cfb601f6b134af7d':
fix FILE* version of ZipUtils::inflateToBuffer
0de50495d6ccb416e412052f428ab97dfee42f14 16-Jul-2009 Doug Zongker <dougz@android.com> fix FILE* version of ZipUtils::inflateToBuffer

This can't have ever worked; a successful fread() was returning 1
instead of getSize.
ipUtils.cpp
66b29ec55e4398472b6944138a9dcc30262b3f83 13-Jul-2009 Joe Onorato <joeo@android.com> Need to skip the padding after reading.

m_dataEndPos points to the end of the data, not the beginning
of the next entity.
ackupData.cpp
ec0f1f6720cd7ecffab54b0dfc2553b55a38e50f 13-Jul-2009 Mathias Agopian <mathias@google.com> implement Mutex and Condition with pthread instead of calling futex directly.

internally pthread uses futex. the implementation consists of simple inlines
there are no implementation files anymore.
ndroid.mk
hreads.cpp
utex_synchro.c
a93fbf8ae95288956696f79cfc12fab528750ea4 09-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am be91fdbc: Merge change 6665 into donut

Merge commit 'be91fdbc5c4f2de3a2bb574a98fdfeef44d8cdb5'

* commit 'be91fdbc5c4f2de3a2bb574a98fdfeef44d8cdb5':
Fix resources not being set correctly.
25c70c8685a6c439bde9af478e94858bff2c387d 09-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am fe811d8b: Merge change 6603 into donut

Merge commit 'fe811d8bd0da15f14702968a9c7deb02db7eec9f'

* commit 'fe811d8bd0da15f14702968a9c7deb02db7eec9f':
quick fix; utf8_codepoint_count must be utf8_length
1b85080b2a5a3199d5c335ced779d52c813595ac 09-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 8a715b4b: Merge change 5510 into donut

Merge commit '8a715b4b791db4390d12e0ded02280592634a424'

* commit '8a715b4b791db4390d12e0ded02280592634a424':
Add useful functions to String8, which enables users to convert between UTF-8 and UTF-32
1f59751c3ef5996f2599ad3b3de1ef7afd69f600 09-Jul-2009 Dianne Hackborn <hackbod@google.com> Fix resources not being set correctly.
esourceTypes.cpp
3228a1092325177966f58dd763eb3341f14ff7ba 09-Jul-2009 Daisuke Miyakawa <dmiyakawa@google.com> quick fix; utf8_codepoint_count must be utf8_length
tring8.cpp
9f220247f64d7db8a36532851cff087f5a6e4070 30-Jun-2009 Daisuke Miyakawa <dmiyakawa@google.com> Add useful functions to String8, which enables users to convert between UTF-8 and UTF-32
It will be used in SQL functions in external/sqlite/android.
See https://android-git.corp.google.com/g/Gerrit#change,5511 for example.

Related internal bug id: 1707173
tring8.cpp
1a16ea88edefc0d80126090f7ad239dbf5231751 06-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 991eec03: Merge change 6252 into donut

Merge commit '991eec03a73f8803d0f8c80b418480ea25293cfb'

* commit '991eec03a73f8803d0f8c80b418480ea25293cfb':
Don't re-parse the framework resources all the time.
0f253efba5552db81bf942705b1e5525fc1f0c90 06-Jul-2009 Dianne Hackborn <hackbod@google.com> Don't re-parse the framework resources all the time.

A small optimization to the resource code, to not re-parse the framework
resources every time we build a new AssetManager. Instead, you can now
construct a ResTable from a previously created one... of course, like the
existing code for using the data in-place, you can't delete the original
ResTable until you have deleted the one that has been constructed from it.
sset.cpp
ssetManager.cpp
esourceTypes.cpp
47a1a39ce9422c6468c0bd87c121658f385d2d8f 02-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 6e1647a2: Merge change 5829 into donut

Merge commit '6e1647a212317f4ee8bcc23948b6621a59172954'

* commit '6e1647a212317f4ee8bcc23948b6621a59172954':
Fix issue #1673793: Theme styles don't apply.
e3562924674927d6faf85fb4adf522b6fa80f140 30-Jun-2009 Dianne Hackborn <hackbod@google.com> Fix issue #1673793: Theme styles don't apply.

It turns out this was not a problem in the resource code at all. Rather,
the system process has a cache of pre-loaded attributes it uses to avoid
continually reloading things as it needs them. Well it turns out this
cache wasn't flushed after a package was uninstalled or a configuration
changed, so you could re-install an app where you change its style resources
so its theme now points to one that is inconsistent in the cache.

This is mostly a problem for developers, where they continually install
new versions of an app where resources have changed. This could possibly
show up when updating an app on a normal phone, although the problem would
eventually correct itself since this cache uses weak references.

Anyway, the cache is now reworked to be flushed appropriately.

This change also includes an update to aapt to be able to dump the
contents of bags in resources.
esourceTypes.cpp
468edaa46d96dda79332babb580a731dc9662aa5 30-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am d09f86ce: Merge changes 5548,5549 into donut

Merge commit 'd09f86ce175fad6ddbd446363f327dfa0575a1d2'

* commit 'd09f86ce175fad6ddbd446363f327dfa0575a1d2':
Better (and less) logging from backup.
Add an extra null terminator. String8::unlockBuffer is
b9c8a7349671ed003f40f70412ed0bbacab90931 30-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 72eb0aca: Merge change 5483 into donut

Merge commit '72eb0acad5cffc57ce5006f6deab29ee259e461e'

* commit '72eb0acad5cffc57ce5006f6deab29ee259e461e':
Expand support for different screen sizes.
d8c2564bbf3e563f2e392fe2822c136e2ee74683 26-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge changes 5548,5549 into donut

* changes:
Better (and less) logging from backup.
Add an extra null terminator. String8::unlockBuffer is supposed to be doing this, but it's not and I can't figure out why. This makes BackupHelperDispatcher able to read the keys correctly.
6eabaa311f752bba624dff00a62b02a34119f55a 26-Jun-2009 Joe Onorato <joeo@android.com> Better (and less) logging from backup.
ackupData.cpp
ackupHelpers.cpp
21342c5c19c1768fe98a30155bfa97fa4138dc80 26-Jun-2009 Dianne Hackborn <hackbod@google.com> Expand support for different screen sizes.

Applications can now declare that they support small, normal, or
large screens. Resource selection can also be done based on these
sizes. By default, pre-Donut apps are false for small and large,
and Donut or later apps are assumed to support all sizes. In either
case they can use <supports-screens> in their manifest to declare
what they actually support.
esourceTypes.cpp
6ef6895b03881d565643077c5d86591c5a3f4951 25-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am df65b60c: Merge change 5243 into donut

Merge commit 'df65b60ce33e5a56815864f8f0713e25378fa649'

* commit 'df65b60ce33e5a56815864f8f0713e25378fa649':
Only report "unknown metadata" once per restore helper
3fc010e74e1c4f9627daf1d48ed9d89702bf8028 25-Jun-2009 Christopher Tate <ctate@google.com> am 54118adb: Put back LOGP -> printf in the backup helper code

Merge commit '54118adb3766fdf73a409102b88d7494bb6889a3'

* commit '54118adb3766fdf73a409102b88d7494bb6889a3':
Put back LOGP -> printf in the backup helper code
5a35e220c5bfa5458c72498a899c86819d36d1a2 25-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 0e034e5a: Merge change 5162 into donut

Merge commit '0e034e5a9a71e5e196baff630dca796a0e3ed3e2'

* commit '0e034e5a9a71e5e196baff630dca796a0e3ed3e2':
Preserve file access mode when backing up / restoring files
bd95c1d3af82e329ada195876348383b7859ce85 24-Jun-2009 Christopher Tate <ctate@google.com> Only report "unknown metadata" once per restore helper

Also removes the auto-free object, replacing it with direct memory manipulation.
ackupHelpers.cpp
6441a76b2ed24eddcadc6a0763dd674c3aa38c46 24-Jun-2009 Christopher Tate <ctate@google.com> Put back LOGP -> printf in the backup helper code
ackupHelpers.cpp
5c2882b25c5f50ad5fe0dd658e4076b0c857dddc 24-Jun-2009 Christopher Tate <ctate@google.com> Preserve file access mode when backing up / restoring files

This change adds a fixed-size metadata block at the head of each file's content
entity. The block is versioned, and fixed-size on the theory that it might be
nice to be able to recover the content (if not the full metadata) of the files
if we're ever confronted with data backed up some hypothetical future helper
that stored expanded metadata.

The net effect is that now on restore, we assign the same access mode to the
file that it originally had when backed up.

Also, some of the code was failing to properly free transient heap-based buffers
when it encountered errors. This has been fixed with the addition of a tiny
stack-based object whose job it is to free() its designated pointer from its
destructor.
ackupHelpers.cpp
2d1db86e4587a919742c2f18223f7cf408263f7d 23-Jun-2009 Christopher Tate <ctate@google.com> am 11b15779: Add file mode to the file-backup saved state blobs

Merge commit '11b157790234d3d2f116ce4c7ed1d3d00fb78bc3'

* commit '11b157790234d3d2f116ce4c7ed1d3d00fb78bc3':
Add file mode to the file-backup saved state blobs
ab2e9e81e187d427b22ac969f47900d3de041264 23-Jun-2009 Christopher Tate <ctate@google.com> Add file mode to the file-backup saved state blobs

This change puts the file's access mode into the saved-state blob used by the
file backup helpers. The tests have been updated for the new blob content
format.

What this change *doesn't* do is actually backup/restore the file mode. This
change is a prerequisite for that, but mode preservation in backup/restore will
require adding metadata to the backup data stream itself, so will be approached
a bit more carefully.

(Also fixed one outright bug in the test program: ReadEntityData() had been
changed to return a ssize_t union of either a byte-count or a negative number
indicating error, but the test program was still assuming that nonzero == error,
and was spuriously failing.)
ackupHelpers.cpp
d056f2d08771091b100bed8cb36946dfc421de24 22-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 72be4049: Merge change 4910 into donut

Merge commit '72be40490951d3f9d0ada16fcf5288d0c3306d88'

* commit '72be40490951d3f9d0ada16fcf5288d0c3306d88':
fix warnings that will show up with GCC 4.4 (in master)
cfb991d1f860e5233d383a40967b252793677469 22-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 4910 into donut

* changes:
fix warnings that will show up with GCC 4.4 (in master)
2a84f2e369e144ff1fbd6eb0867ebaa608bfaf6a 22-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 856dd8a6: Merge change 4952 into donut

Merge commit '856dd8a60a70a5b7dca2bf2114872ce063e2ad60'

* commit '856dd8a60a70a5b7dca2bf2114872ce063e2ad60':
Helper API cleanup. Allows multiple helpers to function,
9cda3e02c6154422abec1c3215b93cc6bb70d76a 19-Jun-2009 Joe Onorato <joeo@android.com> Helper API cleanup. Allows multiple helpers to function,
because they'll always go in the same order, and this lets
us not have to write headers to keep them paired.
ackupData.cpp
52ed26a78b77e559555622a006f888a70cd84a0a 22-Jun-2009 Mathias Agopian <mathias@google.com> fix warnings that will show up with GCC 4.4 (in master)
esourceTypes.cpp
03428fcc8bfb43968f9e9cbd3c6c1fd23290439b 20-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 1585bd24: Merge change 4828 into donut

Merge commit '1585bd24c10d16351f89e32dddbfa799f18db6bd'

* commit '1585bd24c10d16351f89e32dddbfa799f18db6bd':
Report densities in badging, debugging for nine patch bug.
be1bc0a1f969dd874d4a4d10c70f8d585b21a214 20-Jun-2009 Dianne Hackborn <hackbod@google.com> Report densities in badging, debugging for nine patch bug.

The aapt tool now reports all available densities like it already did
for locales. Also this includes more resource data output, which I
was using to examine bug #1867049 (which at this point I am unable to
reproduce).
esourceTypes.cpp
4910dc62561c90c75d953a04f75b31f16e0c0e9c 19-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 5502f04c: Merge change 4709 into donut

Merge commit '5502f04c1dcf2b1918858bacb99fb0480a711707'

* commit '5502f04c1dcf2b1918858bacb99fb0480a711707':
backup stuff
0388b513418f0e1eb45bcb554f866e160cd475da 19-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 16ce3504: Merge change 4708 into donut

Merge commit '16ce3504c5bf98d95d5c36001f755bb4b15253c9'

* commit '16ce3504c5bf98d95d5c36001f755bb4b15253c9':
Make RestoreHelper and friends also write out the snapshot state.
6bda7fd5564a1a88daef7a00890b3eaa191b8854 19-Jun-2009 Joe Onorato <joeo@android.com> backup stuff
ackupData.cpp
ackupHelpers.cpp
da1430be269b2b20920b6cb27616f54e2b83a973 18-Jun-2009 Joe Onorato <joeo@android.com> Make RestoreHelper and friends also write out the snapshot state.
ackupHelpers.cpp
00ea06792b76f30b7e1ee450f0915edb5df75e42 18-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am de72697b: Merge change 4524 into donut

Merge commit 'de72697b771d33738c5f9d6c28087504e0796622'

* commit 'de72697b771d33738c5f9d6c28087504e0796622':
FileRestoreHelper and RestoreHelperDispatcher work.
f509f669cfde367b4591b027d95512accbd2ccef 18-Jun-2009 Joe Onorato <joeo@android.com> FileRestoreHelper and RestoreHelperDispatcher work.
ackupData.cpp
f757bd07108267d37a7944353d2cf2a40d68e115 18-Jun-2009 Joe Onorato <joeo@android.com> am 5f15d151: checkpoint BackupDatAInput / RestoreHelper

Merge commit '5f15d151b5101fadfe6cba1e8f4aa6367e8c603e'

* commit '5f15d151b5101fadfe6cba1e8f4aa6367e8c603e':
checkpoint BackupDatAInput / RestoreHelper
03aa8d7d04428b9c7981f9bada5acf1e808b0056 16-Jun-2009 Joe Onorato <joeo@android.com> checkpoint BackupDatAInput / RestoreHelper
ackupData.cpp
ackupHelpers.cpp
fcb97fcc43844d53a7d9e986dcb35119a72ca431 15-Jun-2009 Christopher Tate <ctate@google.com> am 2fdd428e: Fix some backup reader/writer issues; make local transport do backup

Merge commit '2fdd428e0f18384160f7c38ce3a2cd9ba7e7b2c2'

* commit '2fdd428e0f18384160f7c38ce3a2cd9ba7e7b2c2':
Fix some backup reader/writer issues; make local transport do backup
Fix the jni initializer.
Add RestoreFileHelper, BackupDataInput, and add java wrappers for the methods on BackupDataOutput.
Fix bug #1812041: activity manager crash with bad args.
Journal backup requests so that they won't be lost in a crash
Fix data connection issues.
7bdc440894ead2dc3f0eafee903782c9eb584ecd 12-Jun-2009 Joe Onorato <joeo@android.com> Add RestoreFileHelper, BackupDataInput, and add java wrappers for the methods on BackupDataOutput.
ackupData.cpp
a08c7b6759075c3076e6f2c52df71dd7da894c15 12-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 78f0f8cb: Merge changes 3953,3954 into donut

Merge commit '78f0f8cb2efe9410127c39201e240f6d438eb53c'

* commit '78f0f8cb2efe9410127c39201e240f6d438eb53c':
Make the file backup helper not crash if a file you requested
Fix SharedPrefsBackupHelper so it doesn't hard code the paths to the files.
1a9e19a73e12f5e4891557de64cab5b9b7ae1ac5 11-Jun-2009 Joe Onorato <joeo@android.com> Make the file backup helper not crash if a file you requested
can't be stated. This means you don't need to know if the files
you are backing up exist or not -- we'll figure it out for you.
ackupHelpers.cpp
0ad6120dadc1665f394e73330d30e949066c77e1 11-Jun-2009 Joe Onorato <joeo@android.com> Fix SharedPrefsBackupHelper so it doesn't hard code the paths to the files.

This took quite a bit of refactoring.
ackupHelpers.cpp
4fcd9c700368f08117aa1e2264f56eeb6b8af832 06-Jun-2009 Mathias Agopian <mathias@google.com> get rid of LogSocket which wasn't even implemented (enabled)
ndroid.mk
ogSocket.cpp
7e83f043d9c7afc42b632aa9567ecc17e901068c 05-Jun-2009 Mathias Agopian <mathias@google.com> break dependency on utils/ZipEntry.h and utils/ZipFile.h, get rid of inet_address.h and Socket.h which were not used
ndroid.mk
netAddress.cpp
ocket.cpp
ipEntry.cpp
ipFile.cpp
c5992f071d1a0c89db0ff78dfca7bc81b9265fc3 05-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 3284

* changes:
rename string_array.h to StringArray.h and move the implementation from the header file to a new cpp file.
861aa2f0c9136298380496bd78d6a18e69331c53 05-Jun-2009 Mathias Agopian <mathias@google.com> rename string_array.h to StringArray.h and move the implementation from the header file to a new cpp file.

StringArray is used in two places in framework/base and in the Sim. Ideally we should get rid of it and use Vector<String8> instead of creating new code.
ndroid.mk
tringArray.cpp
1ba244fb656b452e3e4239e01f117cf8af336158 05-Jun-2009 Christopher Tate <ctate@google.com> am 0032ce80: Fix back_up_files() error detection when opening/CRCing the file

Merge commit '0032ce80ac127e6bfb25d727162eee4af208dc77'

* commit '0032ce80ac127e6bfb25d727162eee4af208dc77':
Fix back_up_files() error detection when opening/CRCing the file
6d2bc14d2420689d9789fadc3058bfc1191a8e72 05-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 2a318867: Merge change 3203 into donut

Merge commit '2a3188672ab2b65c0ce7c9c598a463e382c47696'

* commit '2a3188672ab2b65c0ce7c9c598a463e382c47696':
rename a few files to camel-case, add copyright notices
173e38d47c0c1f2407fe2741700b8bdc3c6035cc 05-Jun-2009 Christopher Tate <ctate@google.com> Fix back_up_files() error detection when opening/CRCing the file
ackupHelpers.cpp
f446ba9dcb7df59f886be2f15d83ed3814a556f7 04-Jun-2009 Mathias Agopian <mathias@google.com> rename a few files to camel-case, add copyright notices
ndroid.mk
ackupData.cpp
ackupHelpers.cpp
haracterData.h
nicode.cpp
ipEntry.cpp
ipFile.cpp
ipFileCRO.cpp
ipFileRO.cpp
ipUtils.cpp
ackup_data.cpp
ackup_helper_file.cpp
haracterData.h
294423e148c62b413788945be00cedde3cb3acec 01-Jun-2009 Mathias Agopian <mathias@google.com> get rid of TimerProbe which is never used
ndroid.mk
imerProbe.cpp
1bc9c93faff43eeffe61fc371674159da83f1690 01-Jun-2009 Mathias Agopian <mathias@google.com> get rid of sleepForInterval() which didn't seem to be used anywhere in the source tree. Also get rid of ported.h which seem to be used only (possibly) in the sim. moved the implementation there.
ndroid.mk
imers.cpp
orted.cpp
da416411e0598adbf180c187eb0c2bc08a4df283 28-May-2009 Andy McFadden <fadden@android.com> Sim-only files move, part 2/2.

Move Pipe and executablepath from libutils to the simulator, since nothing
else uses them.
ndroid.mk
ipe.cpp
xecutablepath_darwin.cpp
xecutablepath_linux.cpp
83c0446f27b9542d6c2e724817b2b2d8d1f55085 23-May-2009 Mathias Agopian <mathias@google.com> some work to try to reduce the code size of some native libraries

- make sure that all binder Bn classes define a ctor and dtor in their respective library.
This avoids duplication of the ctor/dtor in libraries where these objects are instantiated.
This is also cleaner, should we want these ctor/dtor to do something one day.

- same change as above for some Bp classes and various other non-binder classes

- moved the definition of CHECK_INTERFACE() in IInterface.h instead of having it everywhere.

- improved the CHECK_INTERFACE() macro so it calls a single method in Parcel, instead of inlining its code everywhere

- IBinder::getInterfaceDescriptor() now returns a "const String16&" instead of String16, which saves calls to String16 and ~String16

- implemented a cache for BpBinder::getInterfaceDescriptor(), since this does an IPC. HOWEVER, this method never seems to be called.
The cache makes BpBinder bigger, so we need to figure out if we need this method at all.
allStack.cpp
extOutput.cpp
0180a05fda0bee586d031942a80076feeff27171 23-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 04561a55: Merge change 2359 into donut

Merge commit '04561a55df693e7bd8d3047ccc4fbef504ac07cf'

* commit '04561a55df693e7bd8d3047ccc4fbef504ac07cf':
Fix for the simultor build breakage.
ca7b80e431fe8c742d396e84722eaf2f6b70a4d8 23-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 2359 into donut

* changes:
Fix for the simultor build breakage.
b4c4265f9e532fb18c2d7097b1b2dd82d90f6b99 22-May-2009 Nicolas Catania <niko@google.com> Fix for the simultor build breakage.

Added missing include sys/time.h for utimes.

Detects when stat64 uses a timespec for the modif and access times
and work around the missing st_*time_nsec.

Apologies for the whitespace changes, emacs removed them automatically.
ackup_helper_file.cpp
b6333b34a2d6e265edf2a052646b07c0b1456ab6 22-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 2351 into donut

* changes:
Fix a major bug in Bundle when unparcelling from AIDL.
8af0f82d89b029edf7e104a36a9a6e48a92f9e93 22-May-2009 Dianne Hackborn <hackbod@google.com> Fix a major bug in Bundle when unparcelling from AIDL.

There was a serious problem in the Bundle(Parcel) and readFromParcel() methods,
where it wasn't doing the copying of the Parcel that Parcel.readBundle() does
and is a basic requirement for it to work correctly.

This re-arranges the code to make all of these functions (hopefully) correct.

Also fix a problem in Parcel where we were not duping fds when copying data from
one Parcel to another.
arcel.cpp
8f9ede0f6daef5bdb7327a17f22a4d4d545395f3 22-May-2009 Marco Nelissen <marcone@google.com> am 7198030f: This should fix the simulator build.

Merge commit '7198030fce4b54820a65a10d54fae18a1ab5df84'

* commit '7198030fce4b54820a65a10d54fae18a1ab5df84':
This should fix the simulator build.
d95aabc9eb117803ee784777fc4ffd22c55ddf43 22-May-2009 Marco Nelissen <marcone@google.com> This should fix the simulator build.
utex_synchro.c
53f6f3c7998fca1a7e1eb277d0ee0fc556be3f35 20-May-2009 Mathias Agopian <mathias@google.com> bring the native_handle stuff back from master_gl
arcel.cpp
208059f67ed2dd9fa025e07fcb6954d3cb61c79e 19-May-2009 Mathias Agopian <mathias@google.com> checkpoint: split libutils into libutils + libbinder
ndroid.mk
inder.cpp
pBinder.cpp
DataConnection.cpp
Interface.cpp
Memory.cpp
PCThreadState.cpp
PermissionController.cpp
ServiceManager.cpp
emoryBase.cpp
emoryDealer.cpp
emoryHeapBase.cpp
emoryHeapPmem.cpp
arcel.cpp
rocessState.cpp
tatic.cpp
416acf8b32e32043908303b56dc3f29d242ab7f4 20-May-2009 Android (Google) Code Review <android-gerrit@google.com> am e2914615: Merge change 2099 into donut

Merge commit 'e29146158b6048936671decc060d398a68333fc0'

* commit 'e29146158b6048936671decc060d398a68333fc0':
Hook up the backup data writer, and add a utility to read the backup data files.
473b6e2d2de9f204e020c87b63a4e9b665641f45 19-May-2009 Joe Onorato <joeo@android.com> Hook up the backup data writer, and add a utility to read the backup data files.
ackup_data.cpp
ackup_helper_file.cpp
00875599646db9b32ddce85db3844e21071b0548 19-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 656a2726: Merge change 1910 into donut

Merge commit '656a2726ad977be194c3b8f4bf4ec3068bf3e1c9'

* commit '656a2726ad977be194c3b8f4bf4ec3068bf3e1c9':
Update aapt badging for native code, configs, density, etc.
7a5798596271cfe43a2cb8383ba9abda55ea9a7f 19-May-2009 Dianne Hackborn <hackbod@google.com> Update aapt badging for native code, configs, density, etc.
ssetManager.cpp
5e3877f43fe6d8d33f70b4e9d2f39f77347cf151 16-May-2009 Android (Google) Code Review <android-gerrit@google.com> am e85bb9eb: Merge change 1823 into donut

Merge commit 'e85bb9ebcce85b8c7a0e0ccb5116cd25bf684727'

* commit 'e85bb9ebcce85b8c7a0e0ccb5116cd25bf684727':
Add the backup data file writer C++ class.
d502f05c6b355a0520781e6609dc8a2a5ce89f9e 16-May-2009 Joe Onorato <joeo@android.com> Add the backup data file writer C++ class.
ackup_data.cpp
ackup_helper_file.cpp
26a87a8e823221d8b12a7af0f8f22305ef02c787 15-May-2009 Joe Onorato <joeo@android.com> am 4535e405: Implement the C++ class to write the backed up file data.

Merge commit '4535e40544aeb957d44fad75fbe5676effe03689'

* commit '4535e40544aeb957d44fad75fbe5676effe03689':
Implement the C++ class to write the backed up file data.
8d626d6a48871fdb62b8adeea98e1299eca61184 15-May-2009 Joe Onorato <joeo@android.com> Implement the C++ class to write the backed up file data.
ndroid.mk
ackup_data.cpp
ackup_helper_file.cpp
ile_backup_helper.cpp
1d0ec01729f23e991243acf1b481f8cd9b7d27ef 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> am aa642c0c: Merge changes 1591,1596 into donut

Merge commit 'aa642c0cc20293137376d44f8221876c121e5be9'

* commit 'aa642c0cc20293137376d44f8221876c121e5be9':
Get the backup calling through to the file backup helper.
Fix typos.
Add a new feature to android.os.Debug to add the ability to inject only specific fields when calling setFieldsOn().
Fixes #1836075. Adds consistency checks for the View hierarchy. To enable them, you need a debug build and ViewDebug.sConsistencyCheckEnabled set to true in debug.prop. This change also lets you easily enable drawing and layout profiling in ViewRoot by setting ViewRoot.sProfileDrawing, ViewRoot.sProfileLayout and ViewRoot.sShowFps in debug.prop with a debug build.
Add Intent.ACTION_APP_ERROR
c7bbc69ed501a7d194c1cbb9c41e2681d3004bd9 14-May-2009 Joe Onorato <joeo@android.com> Get the backup calling through to the file backup helper.

This includes some cleanup to make the parameters match
between BackupService.onBackup and FileBackupHelper.performBackup.
ile_backup_helper.cpp
2a98fb9fb1eda1f18cf1555634a7c33f3147234c 06-May-2009 Joe Onorato <joeo@android.com> fix the sim build. disables the tests for now.
ile_backup_helper.cpp
081b070f6ffc938ec1582916edf3e019eac36ebf 06-May-2009 Joe Onorato <joeo@android.com> fix the sim build. disables the tests for now.
ile_backup_helper.cpp
a1bc294cf4dd8dd504e4a47dda60b02d58e17d7b 06-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 4488b11: Merge change 1039 into donut

Merge commit '4488b11c51ad8f5b8330279a9405e5a0f8586aa4'

* commit '4488b11c51ad8f5b8330279a9405e5a0f8586aa4':
Add some C++ code to do raw files for backup
0c4863b2669867cfc76ea9b50ea3f9b1fecfb9a4 05-May-2009 Joe Onorato <joeo@android.com> Add some C++ code to do raw files for backup
ndroid.mk
ile_backup_helper.cpp
e54a9e05f9de902ffd6d83a4c9b377379e6e3def 29-Apr-2009 Android (Google) Code Review <android-gerrit@google.com> am 9c56513: Merge change 165 into donut

Merge commit '9c5651390056cd9c2f68d5df057739528bd4128b'

* commit '9c5651390056cd9c2f68d5df057739528bd4128b':
Squashed commit of the following:
fd392958eac8813575c29aa733a5a1ec4f655279 22-Apr-2009 Robert Greenwalt <robdroid@android.com> Squashed commit of the following:

commit 012b56fc607cf243cf4b29cb2a5f172bcbe0aecd
Author: Robert Greenwalt <robdroid@android.com>
Date: Wed Apr 22 14:31:26 2009 -0700

Additional fixes and tests for density.

commit 91fdc8e187551ae69e0029a4325fb3ad38fe411b
Author: Robert Greenwalt <robdroid@android.com>
Date: Tue Apr 14 14:39:00 2009 -0700

Fix runtime resource selection logic.

Fix isBetterThan so that o or this may be supperior at any stage.
Used to only handle this-better or tie at each stage, biasing against o.
Also allows reset of unit test to succeed. Fixes bug 1709202.
esourceTypes.cpp
4ab7abd7963f837c39e743ebe6bac1d351a56394 20-Apr-2009 Marco Nelissen <> Merge branch 'readonly-p4-master'
760b67af397f416e2c463855d376df2a0b2d95bf 20-Apr-2009 Marco Nelissen <> AI 146964: tabs -> spaces

Automated import of CL 146964
ipFile.cpp
732ca39b704428b77ef305826d4e6c07190fd7ed 18-Mar-2009 Jean-Baptiste Queru <jbq@google.com> Merge commit 'remotes/korg/cupcake' into merge

Conflicts:
core/java/android/view/animation/TranslateAnimation.java
core/jni/Android.mk
core/res/res/values-en-rGB/strings.xml
libs/audioflinger/AudioFlinger.cpp
libs/surfaceflinger/LayerScreenshot.cpp
packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
bcef13b666c7459241235bc6209837ae81884d2f 11-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137873
tring16.cpp
9adf84a4b6735354893ff1e57c129f66d97d75ee 05-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@136594
allStack.cpp
esourceTypes.cpp
tring16.cpp
hreads.cpp
edbf3b6af777b721cd2a1ef461947e51e88241e1 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
ndroid.mk
sset.cpp
ssetDir.cpp
ssetManager.cpp
inder.cpp
pBinder.cpp
ufferedTextOutput.cpp
allStack.cpp
ebug.cpp
ileMap.cpp
DataConnection.cpp
Interface.cpp
Memory.cpp
PCThreadState.cpp
PermissionController.cpp
ServiceManager.cpp
netAddress.cpp
ogSocket.cpp
ODULE_LICENSE_APACHE2
emoryBase.cpp
emoryDealer.cpp
emoryHeapBase.cpp
emoryHeapPmem.cpp
OTICE
arcel.cpp
ipe.cpp
rocessState.cpp
EADME
efBase.cpp
esourceTypes.cpp
haredBuffer.cpp
ocket.cpp
tatic.cpp
topWatch.cpp
tring16.cpp
tring8.cpp
ystemClock.cpp
extOutput.cpp
hreads.cpp
imerProbe.cpp
imers.cpp
nicode.cpp
ectorImpl.cpp
ipEntry.cpp
ipFile.cpp
ipFileCRO.cpp
ipFileRO.cpp
ipUtils.cpp
haracterData.h
xecutablepath_darwin.cpp
xecutablepath_linux.cpp
utex_synchro.c
isc.cpp
orted.cpp
d5193d9394c5e58176d7bcdf50ef017f8a3b9e1e 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
ndroid.mk
sset.cpp
ssetDir.cpp
ssetManager.cpp
inder.cpp
pBinder.cpp
ufferedTextOutput.cpp
allStack.cpp
ebug.cpp
ileMap.cpp
DataConnection.cpp
Interface.cpp
Memory.cpp
PCThreadState.cpp
PermissionController.cpp
ServiceManager.cpp
netAddress.cpp
ogSocket.cpp
ODULE_LICENSE_APACHE2
emoryBase.cpp
emoryDealer.cpp
emoryHeapBase.cpp
emoryHeapPmem.cpp
OTICE
arcel.cpp
ipe.cpp
rocessState.cpp
EADME
efBase.cpp
esourceTypes.cpp
haredBuffer.cpp
ocket.cpp
tatic.cpp
topWatch.cpp
tring16.cpp
tring8.cpp
ystemClock.cpp
extOutput.cpp
hreads.cpp
imerProbe.cpp
imers.cpp
nicode.cpp
ectorImpl.cpp
ipEntry.cpp
ipFile.cpp
ipFileCRO.cpp
ipFileRO.cpp
ipUtils.cpp
haracterData.h
xecutablepath_darwin.cpp
xecutablepath_linux.cpp
utex_synchro.c
isc.cpp
orted.cpp
43aa2b1cbf7a03e248e10f4d0fec0463257cd52d 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
hreads.cpp
0bb03408de8886e8d17013219967d42fb9c8cf8c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
hreads.cpp
360211f7feff8472e082ed5a0675a0b37da74ce5 14-Feb-2009 Rebecca Schultz Zavin <rebecca@android.com> Need to dup file descriptor when reading from the binder for native handles

When reading a native handle that has passed through the binder,
the fds have to be duped to prevent them from getting closed when the binder
object is destructed.

Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
arcel.cpp
a6938bab1f6fa76ae98ebbe44f4e534e05fa0993 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
arcel.cpp
esourceTypes.cpp
tring8.cpp
5f78a48bb8f7714ee231fca67d60fad77bc1cad9 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127101
arcel.cpp
276293246ea9cbc0a578a7697cc48930376ec0e9 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
emoryHeapBase.cpp
e09fd9e819c23dc90bca68375645e15544861330 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
ndroid.mk
allStack.cpp
PCThreadState.cpp
ogSocket.cpp
emoryDealer.cpp
emoryHeapPmem.cpp
esourceTypes.cpp
utex_synchro.c
7c1b96a165f970a09ed239bb4fb3f1b0d8f2a407 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
ndroid.mk
sset.cpp
ssetDir.cpp
ssetManager.cpp
inder.cpp
pBinder.cpp
ufferedTextOutput.cpp
allStack.cpp
ebug.cpp
ileMap.cpp
DataConnection.cpp
Interface.cpp
Memory.cpp
PCThreadState.cpp
PermissionController.cpp
ServiceManager.cpp
netAddress.cpp
ogSocket.cpp
ODULE_LICENSE_APACHE2
emoryBase.cpp
emoryDealer.cpp
emoryHeapBase.cpp
emoryHeapPmem.cpp
OTICE
arcel.cpp
ipe.cpp
rocessState.cpp
EADME
efBase.cpp
esourceTypes.cpp
haredBuffer.cpp
ocket.cpp
tatic.cpp
topWatch.cpp
tring16.cpp
tring8.cpp
ystemClock.cpp
extOutput.cpp
hreads.cpp
imerProbe.cpp
imers.cpp
nicode.cpp
ectorImpl.cpp
ipEntry.cpp
ipFile.cpp
ipFileCRO.cpp
ipFileRO.cpp
ipUtils.cpp
haracterData.h
xecutablepath_darwin.cpp
xecutablepath_linux.cpp
utex_synchro.c
isc.cpp
orted.cpp