summaryrefslogtreecommitdiff
path: root/platform/java
diff options
context:
space:
mode:
authorSebastian Rasmussen <sebras@gmail.com>2017-06-19 01:09:07 +0800
committerSebastian Rasmussen <sebras@gmail.com>2017-06-28 22:36:31 +0800
commit6fc5f6e800e220d0236aff4e505af439a0d3cb88 (patch)
tree3203d6d88b119b4eb0a1e24be8fd54153d1b393f /platform/java
parentadfec4643eb128bdabc9c0e28e315a1875eac2cf (diff)
downloadmupdf-6fc5f6e800e220d0236aff4e505af439a0d3cb88.tar.xz
jni: Avoid freeing data buffer twice in case of error.
fz_new_buffer_from_data() will take ownership of the data buffer given to it and frees it upon error.
Diffstat (limited to 'platform/java')
-rw-r--r--platform/java/mupdf_native.c12
1 files changed, 0 insertions, 12 deletions
diff --git a/platform/java/mupdf_native.c b/platform/java/mupdf_native.c
index 6d392cf6..2b198a77 100644
--- a/platform/java/mupdf_native.c
+++ b/platform/java/mupdf_native.c
@@ -6490,7 +6490,6 @@ FUN(PDFDocument_addStreamString)(JNIEnv *env, jobject self, jstring jbuf, jobjec
sbuf = (*env)->GetStringUTFChars(env, jbuf, NULL);
if (!sbuf) return NULL;
- fz_var(data);
fz_var(buf);
fz_try(ctx)
@@ -6499,13 +6498,11 @@ FUN(PDFDocument_addStreamString)(JNIEnv *env, jobject self, jstring jbuf, jobjec
data = fz_malloc(ctx, len);
memcpy(data, sbuf, len);
buf = fz_new_buffer_from_data(ctx, data, len);
- data = NULL;
ind = pdf_add_stream(ctx, pdf, buf, obj, compressed);
}
fz_always(ctx)
{
fz_drop_buffer(ctx, buf);
- fz_free(ctx, data);
(*env)->ReleaseStringUTFChars(env, jbuf, sbuf);
}
fz_catch(ctx)
@@ -6561,7 +6558,6 @@ FUN(PDFDocument_addPageString)(JNIEnv *env, jobject self, jobject jmediabox, jin
scontents = (*env)->GetStringUTFChars(env, jcontents, NULL);
if (!scontents) return NULL;
- fz_var(data);
fz_var(contents);
fz_try(ctx)
@@ -6569,13 +6565,11 @@ FUN(PDFDocument_addPageString)(JNIEnv *env, jobject self, jobject jmediabox, jin
size_t len = strlen(scontents);
data = fz_malloc(ctx, len);
contents = fz_new_buffer_from_data(ctx, data, len);
- data = NULL;
ind = pdf_add_page(ctx, pdf, &mediabox, rotate, resources, contents);
}
fz_always(ctx)
{
fz_drop_buffer(ctx, contents);
- fz_free(ctx, data);
(*env)->ReleaseStringUTFChars(env, jcontents, scontents);
}
fz_catch(ctx)
@@ -7142,7 +7136,6 @@ FUN(PDFObject_writeStreamString)(JNIEnv *env, jobject self, jstring jstr)
str = (*env)->GetStringUTFChars(env, jstr, NULL);
if (!str) return;
- fz_var(data);
fz_var(buf);
fz_try(ctx)
@@ -7151,13 +7144,11 @@ FUN(PDFObject_writeStreamString)(JNIEnv *env, jobject self, jstring jstr)
data = fz_malloc(ctx, len);
memcpy(data, str, len);
buf = fz_new_buffer_from_data(ctx, data, len);
- data = NULL;
pdf_update_stream(ctx, pdf, obj, buf, 0);
}
fz_always(ctx)
{
fz_drop_buffer(ctx, buf);
- fz_free(ctx, data);
(*env)->ReleaseStringUTFChars(env, jstr, str);
}
fz_catch(ctx)
@@ -7199,7 +7190,6 @@ FUN(PDFObject_writeRawStreamString)(JNIEnv *env, jobject self, jstring jstr)
str = (*env)->GetStringUTFChars(env, jstr, NULL);
if (!str) return;
- fz_var(data);
fz_var(buf);
fz_try(ctx)
@@ -7208,13 +7198,11 @@ FUN(PDFObject_writeRawStreamString)(JNIEnv *env, jobject self, jstring jstr)
data = fz_malloc(ctx, len);
memcpy(data, str, len);
buf = fz_new_buffer_from_data(ctx, data, len);
- data = NULL;
pdf_update_stream(ctx, pdf, obj, buf, 1);
}
fz_always(ctx)
{
fz_drop_buffer(ctx, buf);
- fz_free(ctx, data);
(*env)->ReleaseStringUTFChars(env, jstr, str);
}
fz_catch(ctx)