diff options
author | Robin Watts <robin.watts@artifex.com> | 2013-10-04 14:51:14 +0100 |
---|---|---|
committer | Robin Watts <robin.watts@artifex.com> | 2013-10-04 14:52:32 +0100 |
commit | 28d5f39d41b0b8c02e77f81a2ef67791268ac310 (patch) | |
tree | c48de09181f8de991534d19567d435021a57b47f /platform | |
parent | 67ebe59a41f8b2deaf78dc916c5cd203d3fcc3a3 (diff) | |
download | mupdf-28d5f39d41b0b8c02e77f81a2ef67791268ac310.tar.xz |
Android: Fix reference overflow in mupdf.c
Ink attachments of more than 512 points can run us out of local
references. Fix this by freeing as we go.
Diffstat (limited to 'platform')
-rw-r--r-- | platform/android/jni/mupdf.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/platform/android/jni/mupdf.c b/platform/android/jni/mupdf.c index e8cd2277..4b84582e 100644 --- a/platform/android/jni/mupdf.c +++ b/platform/android/jni/mupdf.c @@ -1540,9 +1540,11 @@ JNI_FN(MuPDFCore_addInkAnnotationInternal)(JNIEnv * env, jobject thiz, jobjectAr pts[k].x = pt ? (*env)->GetFloatField(env, pt, x_fid) : 0.0f; pts[k].y = pt ? (*env)->GetFloatField(env, pt, y_fid) : 0.0f; + (*env)->DeleteLocalRef(env, pt); fz_transform_point(&pts[k], &ctm); k++; } + (*env)->DeleteLocalRef(env, arc); } annot = (fz_annot *)pdf_create_annot(idoc, (pdf_page *)pc->page, FZ_ANNOT_INK); |