Changes proposed by Ben Hawkes of Google Project Zero.
NinePatchPeeker.cpp:
Instead of asserting, return false for bad data.
ResourceTypes.h:
Store ninepatch values as unsigned.
BUG:19151999
Change-Id: Ibe35e7569f632c6bb8a34a7701e26bb6ed547ec2
bug:18921087
This fixes issues where bitmaps are cached as textures, and not
reuploaded when reused by BitmapRegionDecoder, showing stale content.
Change-Id: I7626fd6acd36d8e38723689734855ce9154eb8c8
Should be unnecessary after c/115476.
This reverts commit ba823cee8bafff98640408a777fe105a72fcea0d.
Change-Id: I3ef4d3e04805e450038d469d9672dc064f729b0f
Make consistent use of core_jni_helpers for registration.
Translate some #ifdefs into const bools.
Change-Id: I37639aa053dd50f003a552cbd8550dddecc811c5
Turn on -Wall -Werror in core/jni. Fix warnings.
Clang TODO: For GCC we need to turn off Wunused-but-set-variable in
the GL bindings. However, Clang doesn't have that warning and thus
complains about an unknown pragma. It is necessary to make the
pragma #ifdef-ed on the compiler being GCC.
Change-Id: I14cab48d45c2771eef0432082356c47ed44a3d7f
Bug: 17947547
Pull the ResourceCache (aka, ref-counting side channel) out of
Caches so that DisplayListRenderer doesn't use Caches, avoiding
the risk of instantiating Caches on the wrong thread or
without a GL context
Change-Id: I7d63b70b3b0a0163308c5dedd6ef255eadebe8fd
Passes the BufferItem for the queued buffer to the onFrameAvailable
callback so the consumer can track the BufferQueue's contents.
Bug: 18111837
Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
If apps are writing malformed content (typically not a PDF file) or if the
PDF content they provide to the print system is password protected, are now
crashed as both of these are app bugs.
bug:17636435
Change-Id: Ifce6a3199e587448dd38f6a84290a965c24b698b
When rendering a PDF file for print preview we take into account
the selected print options such as paper size, orientation, etc
without modifying the document. To print we send the doc in its
original form and the print options so the print service can apply
the necessary transforms in addition to the optional custom options
it supports. When saving to PDF we have to actually change the
document as we act as a print service.
bug:13545980
Change-Id: Icdcecf962bec6ff742cc6015df5af9d9086ce760
Recently we added a way for SkImageDecoder::decode to distinguish
between successfully decoding the entire image and only partially
decoding the image (see https://codereview.chromium.org/647023006).
Only consider a call to decode() a success if the image was completely
decoded. This matches pre-L behavior, and lets the caller know that
they need to try to decode again.
Requires a change to external/skia (I33e6940e247b74b20361ae041f8d36eb600df49f)
BUG:17419670
Change-Id: I17ed7288b2359fafaec9551adb16d1d037800eb7
Bug 17452965
A single point Path (move-to only) was not returning any
verbs in the verb list. This forces an approximation for
single move-to and empty paths by giving the same value
for fraction 0 and fraction 1.
Change-Id: Icb1b932d730457680cf422377a83fe669f0a7687
A user may request a subset of the document's pages to be printed.
In this case the expectation is that the resulting document does
not include not selected pages. While print serivices can do the
trimming themselves or the printer may do so, moving, potantually
many, redundant pages is inefficient. The real problem is when
saving to a PDF file where the saved file must not have the pages
the user did not select. This change adds shredding of undesired
pages from the PDF before saving it or passing it to a print service.
:
bug:17285994
Change-Id: I7deba535af99457bea3c118202314f0f3812e809
ninePatchInsets could be null after allocation, this possibly caused
a SIGABRT in GC or check_jni failure.
Bug: 17323232
Change-Id: Icd7e3819032e8e999d3c1483bf261bb39b3fe9e4