1637 Commits

Author SHA1 Message Date
Jeff Brown
fe2d4abdd9 am 698d3de6: am e7de36e6: Merge "Throw TransactionTooLargeException when Binder transaction fails. Bug: 5578022" into ics-mr1
* commit '698d3de681bf85047675baa61f9b28961f3d6862':
  Throw TransactionTooLargeException when Binder transaction fails. Bug: 5578022
2011-11-10 16:14:43 +00:00
Jeff Brown
0bde66a837 Throw TransactionTooLargeException when Binder transaction fails.
Bug: 5578022

Previously, Binder transactions failed silently, which caused
problems because apps would carry on assuming that the operation
had succeeded.  Often, the apps would crash soon due to a violated
invariant, but sometimes they managed to do some damage first...

Change-Id: Ia9cc98b3b761a8160e7c4e87507860b5912c0451
2011-11-08 20:42:11 -08:00
Fabrice Di Meglio
208d4592f6 Fix potential crash when shaping Hebrew with bold
- make code more resilient
- make correct initialization of gHebrewRegularTypeface

Change-Id: I97e98d36b830ad35979184c1459e8c8503eb3d28
2011-11-08 17:13:49 -08:00
Fabrice Di Meglio
e187a2f55f Fix bug #5559439 Bogus tab title in browser
- no need to shigt glyph IDs if we are a "common" script
- also code cleaning (suppress dead code)

Change-Id: I17bcf960f925a897a30894a3c581053f7fe5905f
2011-11-07 19:54:09 -08:00
Fabrice Di Meglio
4f4b83c50c am 07b4b314: am bcf05a69: Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
* commit '07b4b3145333bc8ece9fdbb68ade726b3d6485cd':
  Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
2011-11-02 17:50:18 +00:00
Robert Greenwalt
380f763e53 am 852d72b2: am bd9b1528: Merge "Add cdma_rmnet4 to list of monitored interfaces" into ics-mr0
* commit '852d72b28e6d7d0e6372a9b544641817338002e6':
  Add cdma_rmnet4 to list of monitored interfaces
2011-11-02 17:31:06 +00:00
Fabrice Di Meglio
07b4b31453 am bcf05a69: Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
* commit 'bcf05a69090f342d328f1537d1d83406b883290b':
  Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
2011-11-02 02:17:48 +00:00
Fabrice Di Meglio
bcf05a6909 Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
- make single run case non verbose

Change-Id: I5c3b87aeb613697233290ddecac3ca00f58f8313
2011-11-01 17:58:00 -07:00
Fabrice Di Meglio
ef9bb3c3ea Fix bug #5438102 Double Arabic harakat overlap instead of stack In TextView
IMPORTANT: this change needs two patches for Harfbuzz:
- one concerning hb_utf16_script_run_prev() which was not returning the correct "previous" script
- one for the "script_properties" table that was missing Arabic code point ranges and declaring
HB_Script_Inherited instead of HB_Script_Arabic

The current change is doing the following:
- pass the correct typeface for Harbuzz shaping (depending on the script of the run)
- offset correctly the glyphIDs returned by Harfbuzz

We need to offset the glyphsID as Harfbuzz will return local glyphIDs (meaning in the
local range of the font used for shapping).

We then cannot use those glyphIDs when we are using a fallback Font (Arabic, Hebrews...)
because the FontRenderer needs glyphIDs in the range of all the Fonts (including the fallbacks)

Change-Id: I494897435bbc59293b02392ee2059cebcdf0e571
2011-11-01 17:16:08 -07:00
Fabrice Di Meglio
3b8d33b131 Merge "Fix bug #5504346 Hung in native_getTextRunAdvances - DO NOT MERGE" into ics-mr1 2011-11-01 13:30:24 -07:00
Robert Greenwalt
852d72b28e am bd9b1528: Merge "Add cdma_rmnet4 to list of monitored interfaces" into ics-mr0
* commit 'bd9b1528051a1b257768fdbc5077a2d4473b02dd':
  Add cdma_rmnet4 to list of monitored interfaces
2011-11-01 20:29:42 +00:00
Robert Greenwalt
bd9b152805 Merge "Add cdma_rmnet4 to list of monitored interfaces" into ics-mr0 2011-11-01 13:27:56 -07:00
Fabrice Di Meglio
904221a342 Fix bug #5504346 Hung in native_getTextRunAdvances - DO NOT MERGE
- better check of ICU returned values
- default to single run if ICU is returning errors

Change-Id: I836818bda4fc72a27b2201f01023cd23c5d99ecb
2011-11-01 12:47:51 -07:00
Robert Greenwalt
57c8ac6e13 Add cdma_rmnet4 to list of monitored interfaces
Lets the data traffic arrows work on LTE device on 1x,
but also lets telephony monitor for hung radios on 1X.

bug:5531630
Change-Id: I9fa25a5223afaa2e37373668c899ac28a95783fa
2011-11-01 11:51:27 -07:00
Fabrice Di Meglio
26e9ee28de Fix bug #5504346 Hung in native_getTextRunAdvances - DO NOT MERGE
- better check of ICU returned values
- default to single run if ICU is returning errors

Change-Id: I836818bda4fc72a27b2201f01023cd23c5d99ecb
2011-11-01 10:49:44 -07:00
Fabrice Di Meglio
ad41b7c0d4 Merge "Fix bug #5504346 Hung in native_getTextRunAdvances" 2011-10-31 15:53:54 -07:00
Fabrice Di Meglio
5beeda08a7 Fix bug #5504346 Hung in native_getTextRunAdvances
- better check of ICU returned values
- default to single run if ICU is returning errors

Change-Id: I836818bda4fc72a27b2201f01023cd23c5d99ecb
2011-10-31 15:26:11 -07:00
Jeff Brown
bce4561708 resolved conflicts for merge of 2d280f75 to ics-mr1
Change-Id: I459e1cb0b60fb94dfb12862fedb9f8d949c226a7
2011-10-30 14:24:02 -07:00
Jeff Brown
89101cd9d9 Improve the slow query instrumentation.
On user-debug and eng builds, you can set the
"db.log.slow_query_threshold" system property to queries that
take longer than the specified number of milliseconds.
Set it to 0 to log all queries.

This property has been around for a while but it was implemented
poorly.  In particular, it *changed* the behavior of the query
by calling getCount() while holding the Db connection.
In normal operation, the query will not actually run until later.

By putting the timing logic into fillWindow() instead, we ensure
that we only measure queries that actually ran.  We also capture
cases where the cursor window gets filled multiple times.

Bug: 5520301
Change-Id: I174f5e1ea15831a1d22a36e9a804d7755f230b38
2011-10-28 14:58:39 -07:00
Jeff Brown
650de3dcfc Optimize fillWindow to improve reverse-seek performance.
Bug: 5520301

When an application requests a row from a SQLiteCursor that
is not in the window, instead of filling from the requested
row position onwards, fill from a little bit ahead of the
requested row position.

This fixes a problem with applications that seek backwards
in large cursor windows.  Previously the application could
end up refilling the window every time it moved back
one position.

We try to fill about 1/3 before the requested position and
2/3 after which substantially improves scrolling responsiveness
when the list is bound to a data set that does not fit
entirely within one cursor window.

Change-Id: I168ff1d3aed1a41ac96267be34a026c108590e52
2011-10-28 01:46:18 -07:00
Steve Block
71f2cf116a 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
2011-10-26 09:57:54 +01:00
Steve Block
28d9f024e0 Rename (IF_)LOG() to (IF_)ALOG() DO NOT MERGE
See https://android-git.corp.google.com/g/#/c/141576

Bug: 5449033
Change-Id: I42575e7c29cf1c0f465c357a5c97ab118df6f473
2011-10-25 16:28:24 +01:00
Fabrice Di Meglio
44cd3f8f3d Merge "Fix compilation issue when DEBUG_GLYPHS define is activated" 2011-10-20 18:58:03 -07:00
Fabrice Di Meglio
a99ed6284e Fix compilation issue when DEBUG_GLYPHS define is activated
Change-Id: I61693952ffdc02f77058311fc982fbbf8df24c6c
2011-10-19 16:40:02 -07:00
Romain Guy
2c183fa5bf Notify a Bitmap is has changed when calling copyPixelFromBuffer
Change-Id: Ibff1a162edfe11473c5c167e764405bf83ec5822
2011-10-18 17:56:06 -07:00
Jeff Brown
5e5d6d8ba0 Deprecate local-only CursorWindows.
There is no difference and has never really been a difference
between local-only and remotable CursorWindows.  By removing the
distinction officially in the API, we will make it easier to
implement CrossProcessCursor correctly.  CrossProcessCursor
is problematic currently because it's not clear whether a call
to getWindow() will return a local-only window or a remotable window.
As a result, the bulk cursor adaptor has special case handling
for AbstractWindowedCursors vs. ordinary CrossProcessCursors
so that it can set a remotable window before the cursor fills it.
All these problems go away if we just forget about local-only
windows being special in any way.

Change-Id: Ie59f517968e33d0ecb239c3c4f60206495e8f376
2011-10-12 22:19:41 -07:00
Jeff Brown
0cde89f5f0 Use ashmem for CursorWindows.
Bug: 5332296

The memory dealer introduces additional delays for reclaiming
the memory owned by CursorWindows because the Binder object must
be finalized.  Using ashmem instead gives CursorWindow more
direct control over the lifetime of the shared memory region.

The provider now allocates the CursorWindows and returns them
to clients with a read-only protection bit set on the ashmem
region.

Improved the encapsulation of CursorWindow.  Callers shouldn't
need to care about details like how string fields are allocated.

Removed the compile-time configuration of string and numeric
storage modes to remove some dead weight.

Change-Id: I07c2bc2a9c573d7e435dcaecd269d25ea9807acd
2011-10-11 11:03:19 -07:00
Jeff Brown
270928bd4a Merge changes Idbfeb3cc,I03e8e2e7,Iff9eed78
* changes:
  Fix regression in CursorWindow.getString() Bug: 5332296
  Clean up CursorWindow lifetime. Bug: 5332296
  Fix regression in CursorWindow.copyStingToBuffer. Bug: 5332296
2011-10-07 15:08:24 -07:00
Jeff Brown
4cc8bafb4b Merge "Restore broken CursorWindow.getType behavior. Bug: 5430009" 2011-10-07 15:07:56 -07:00
Jeff Brown
715311fa5a Fix regression in CursorWindow.getString()
Bug: 5332296

NewStringUTF expects modified UTF-8, so it barfs on UTF-8 strings
that contain high codepoints.  Even though it results in an extra
copy being performed, first convert to UTF-16, then call NewString.

Change-Id: Idbfeb3cc2c4b731834e4482848dcac2fa33ec2d0
2011-10-07 14:17:09 -07:00
Jeff Brown
7ce745248d Clean up CursorWindow lifetime.
Bug: 5332296

Removed dead code in SQLiteCursor related to the use of a background
query thread.  This code could result in CursorWindows being modified
concurrently or used after free.  This code is broken, unused and
is just in the way.

Added comments to explain how CursorWindow ownership is
supposed to work for AbstractWindowedCursors.  (There are still cases
where cursor windows get dropped on the floor without being closed.
Those will be taken care of in a subsequent patch.)

Cleaned up SQLiteQuery.fillWindow to eliminate duplicate code and
remove bits that were only needed for background loading, like
returning -1.

Change-Id: I03e8e2e73ff0c11df76d63f57df4c5ada06ae1cb
2011-10-07 13:31:00 -07:00
Jeff Brown
d0ff68da6a Fix regression in CursorWindow.copyStingToBuffer.
Bug: 5332296

Change-Id: Iff9eed786f0a8293b6156f883a66a322ddad5e99
2011-10-07 13:28:18 -07:00
Jeff Brown
aa32c30b81 Restore broken CursorWindow.getType behavior.
Bug: 5430009

Some CTS tests try to call getType on fields in empty
cursor windows or with out of bound column indices (-1).
Restoring the previous behavior of returning FIELD_TYPE_NULL
instead of throwing.  Fix this later.

Change-Id: I782bd02012474e7dabc5bb7ea2dc45e8b0c7ef25
2011-10-07 13:17:18 -07:00
Fabrice Di Meglio
75b071e744 Merge "Fix bug #5371117 Regression : The Hebrew / Arabic text behavior in ICS latest build is wrong" 2011-10-07 12:30:58 -07:00
Fabrice Di Meglio
5c863f741e Fix bug #5371117 Regression : The Hebrew / Arabic text behavior in ICS latest build is wrong
- welcome back start / count
- goodbye log clusters
- clean Paint code
- make private some functions as they should be
- improve memory allocation (create only one Shaper and reuse it for for shaping the runs in
the same input text)

Change-Id: I89a320c7f041319851308c8c9a919fbeafa82cdd
2011-10-07 11:22:39 -07:00
Jeff Brown
3bc6bbc92c Clean up CursorWindow code.
Bug: 5332296

The code is functionally equivalent, but a little more efficient
and much easier to maintain.

Change-Id: I90670a13799df05831843a5137ab234929281b7c
2011-10-06 14:40:13 -07:00
Dianne Hackborn
c04db7e067 Fix handling of "allow fds" state.
Didn't take into account nesting of bundles.  Boo.

Change-Id: Ic8cf21ad8d6f4938a3e105128624c9d162310d01
2011-10-03 21:09:35 -07:00
Jeff Brown
6579a9d6fe Transfer large bitmaps using ashmem.
Bug: 5224703

Change-Id: If385a66adf4c6179a0bb49c0e6d09a9567e23808
2011-10-03 17:28:13 -07:00
Dianne Hackborn
9ecebbfbf7 Add mechanism for Parcel to not allow FDs to be written to it.
This is to help implement issue #5224703.

Change-Id: I026a5890495537d15b57fe61227a640aac806d46
2011-10-03 16:58:41 -07:00
Fabrice Di Meglio
8ebf1efd66 Merge "Fix potential issue with the TextLayoutCache with glyphs" 2011-10-03 09:56:39 -07:00
Fabrice Di Meglio
155fa38a71 Fix potential issue with the TextLayoutCache with glyphs
- there may be a mapping of one char to many glyphs

Change-Id: I48846d176d61dc8d8e513ca144fdf8ad805e63b7
2011-09-30 17:24:35 -07:00
Fabrice Di Meglio
717060b076 Improve TextLayoutCache performances a bit
- the gain is about 5% and the timing is more stable
- use compare_type() and strictly_order_type()

Change-Id: Iab81869a8ba461ce786a468b6c59b8f34e8db838
2011-09-30 14:08:25 -07:00
Fabrice Di Meglio
8f0bb4bc17 Merge "Fix bug # 5376028 Arabic text is kinda broken - disappearing glyphs" 2011-09-27 18:45:57 -07:00
Irfan Sheriff
cbb62bb818 Merge "Switch to cfg based signal_poll command" 2011-09-26 22:11:03 -07:00
Fabrice Di Meglio
5293cea4e0 Fix bug # 5376028 Arabic text is kinda broken - disappearing glyphs
- make the log clusters happy

Change-Id: I73ca9512f0ca02549dad5270d6ec198ae9b00a4e
2011-09-26 18:29:54 -07:00
Irfan Sheriff
921df5cbc4 Switch to cfg based signal_poll command
Bug: 5352916
Change-Id: Id2ba7091a5e4cc4c1e14aa2c49e5b943519019bf
2011-09-26 16:30:15 -07:00
Bart Sears
b637717096 Revert "Transfer large bitmaps using ashmem. Bug: 5224703"
This reverts commit 56c58f66b97d22fe7e7de1f7d9548bcbe1973029

This CL was causing the browser to crash when adding bookmarks, visiting the bookmarks page, and sharing pages (see bug http://b/issue?id=5369231
2011-09-25 14:30:21 -07:00
Jeff Brown
56c58f66b9 Transfer large bitmaps using ashmem.
Bug: 5224703

Change-Id: Ic7481dd9f173986f085a8bbdcc59bbe9830d7a44
2011-09-23 21:20:47 -07:00
Fabrice Di Meglio
651e46679b Merge "Fix bug #5332081 TextLayoutCache needs to be able to have more cache hits" 2011-09-23 13:30:41 -07:00
Christopher Tate
54303e6b23 am b20d378c: Merge "Don\'t crash during full backup when CheckJNI is enabled" into ics-factoryrom
* commit 'b20d378cec09da18301eb9c33bc88251beb81042':
  Don't crash during full backup when CheckJNI is enabled
2011-09-23 13:21:07 -07:00