summaryrefslogtreecommitdiff
path: root/platform/android
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2013-10-04 14:51:14 +0100
committerRobin Watts <robin.watts@artifex.com>2013-10-04 14:52:32 +0100
commit28d5f39d41b0b8c02e77f81a2ef67791268ac310 (patch)
treec48de09181f8de991534d19567d435021a57b47f /platform/android
parent67ebe59a41f8b2deaf78dc916c5cd203d3fcc3a3 (diff)
downloadmupdf-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/android')
-rw-r--r--platform/android/jni/mupdf.c2
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);