diff options
-rw-r--r-- | platform/java/mupdf_native.c | 2 | ||||
-rw-r--r-- | source/pdf/pdf-annot-edit.c | 10 | ||||
-rw-r--r-- | source/tools/murun.c | 2 |
3 files changed, 5 insertions, 9 deletions
diff --git a/platform/java/mupdf_native.c b/platform/java/mupdf_native.c index 1845f4b9..4bf035ff 100644 --- a/platform/java/mupdf_native.c +++ b/platform/java/mupdf_native.c @@ -8403,7 +8403,7 @@ FUN(PDFAnnotation_setQuadPoints)(JNIEnv *env, jobject self, jobject jqps) if (m > 8) m = 8; - (*env)->GetFloatArrayRegion(env, jqp, i * 8, m, qp); + (*env)->GetFloatArrayRegion(env, jqp, 0, m, &qp[i * 8]); if ((*env)->ExceptionCheck(env)) return; if (m < 8) diff --git a/source/pdf/pdf-annot-edit.c b/source/pdf/pdf-annot-edit.c index dbca68c6..d0ad0915 100644 --- a/source/pdf/pdf-annot-edit.c +++ b/source/pdf/pdf-annot-edit.c @@ -654,29 +654,25 @@ pdf_annot_quad_point_count(fz_context *ctx, pdf_annot *annot) pdf_obj *quad_points; check_allowed_subtypes(ctx, annot, PDF_NAME_QuadPoints, quad_point_subtypes); quad_points = pdf_dict_get(ctx, annot->obj, PDF_NAME_QuadPoints); - return pdf_array_len(ctx, quad_points); + return pdf_array_len(ctx, quad_points) / 8; } void pdf_annot_quad_point(fz_context *ctx, pdf_annot *annot, int idx, float v[8]) { pdf_obj *quad_points; - pdf_obj *quad_point; fz_matrix page_ctm; int i; check_allowed_subtypes(ctx, annot, PDF_NAME_QuadPoints, quad_point_subtypes); - quad_points = pdf_dict_get(ctx, annot->obj, PDF_NAME_QuadPoints); - quad_point = pdf_array_get(ctx, quad_points, idx); - pdf_page_transform(ctx, annot->page, NULL, &page_ctm); for (i = 0; i < 8; i += 2) { fz_point point; - point.x = pdf_to_real(ctx, pdf_array_get(ctx, quad_point, i+0)); - point.y = pdf_to_real(ctx, pdf_array_get(ctx, quad_point, i+1)); + point.x = pdf_to_real(ctx, pdf_array_get(ctx, quad_points, idx * 8 + i + 0)); + point.y = pdf_to_real(ctx, pdf_array_get(ctx, quad_points, idx * 8 + i + 1)); fz_transform_point(&point, &page_ctm); v[i+0] = point.x; v[i+1] = point.y; diff --git a/source/tools/murun.c b/source/tools/murun.c index 2e407c99..a4c25791 100644 --- a/source/tools/murun.c +++ b/source/tools/murun.c @@ -4117,7 +4117,7 @@ static void ffi_PDFAnnotation_setQuadPoints(js_State *J) fz_context *ctx = js_getcontext(J); pdf_annot *annot = js_touserdata(J, 0, "pdf_annot"); float *qp = NULL; - int k, i, n = 0; + int k, i, n; n = js_getlength(J, 1); |