summaryrefslogtreecommitdiffstats
path: root/graphics
diff options
context:
space:
mode:
authorSvet Ganov <svetoslavganov@google.com>2014-08-29 15:35:49 -0700
committerSvetoslav <svetoslavganov@google.com>2014-09-02 11:40:44 -0700
commit13f542cabd635c55ade5442764cc4a3d2f7880ea (patch)
treea34371f9961bae0d0496be006a59371b521d0e3d /graphics
parent6a6a8f00946f963191612f64238bd706c2188dd8 (diff)
downloadframeworks_base-13f542cabd635c55ade5442764cc4a3d2f7880ea.zip
frameworks_base-13f542cabd635c55ade5442764cc4a3d2f7880ea.tar.gz
frameworks_base-13f542cabd635c55ade5442764cc4a3d2f7880ea.tar.bz2
Move print rendering in an isolated process.
Security review of the PDF rendering code revealed that it is not sercure. Therefore, this code must be run in a sandbox. This change moves the rendering code in an isolated process. bug:16897933 Change-Id: I711ce42a56892db1837950137bfaa79e1d61a7c4
Diffstat (limited to 'graphics')
-rw-r--r--graphics/java/android/graphics/pdf/PdfRenderer.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/graphics/java/android/graphics/pdf/PdfRenderer.java b/graphics/java/android/graphics/pdf/PdfRenderer.java
index b5d9729..1072b3c 100644
--- a/graphics/java/android/graphics/pdf/PdfRenderer.java
+++ b/graphics/java/android/graphics/pdf/PdfRenderer.java
@@ -195,6 +195,7 @@ public final class PdfRenderer implements AutoCloseable {
public Page openPage(int index) {
throwIfClosed();
throwIfPageOpened();
+ throwIfPageNotInDocument(index);
mCurrentPage = new Page(index);
return mCurrentPage;
}
@@ -237,6 +238,12 @@ public final class PdfRenderer implements AutoCloseable {
}
}
+ private void throwIfPageNotInDocument(int pageIndex) {
+ if (pageIndex >= mPageCount) {
+ throw new IllegalArgumentException("Invalid page index");
+ }
+ }
+
/**
* This class represents a PDF document page for rendering.
*/