openbsd-ports/textproc/mupdf/patches/patch-fitz_filt_dctd_c
jasper 4ae9582f93 Security fix for SA43020:
MuPDF "closedctd()" Memory Corruption Vulnerability.

ok sthen@ (MAINTAINER) aja@
2011-02-10 13:01:12 +00:00

28 lines
791 B
Plaintext

$OpenBSD: patch-fitz_filt_dctd_c,v 1.1 2011/02/10 13:01:12 jasper Exp $
Security fix for SA43020:
MuPDF "closedctd()" Memory Corruption Vulnerability.
Patch from git commit 53448d850052082cb815982419a07b52f95c6607.
--- fitz/filt_dctd.c.orig Wed Aug 25 16:12:11 2010
+++ fitz/filt_dctd.c Wed Feb 9 21:39:03 2011
@@ -182,8 +182,17 @@ static void
closedctd(fz_stream *stm)
{
fz_dctd *state = stm->state;
+
+ if (setjmp(state->jb))
+ {
+ state->chain->rp = state->chain->wp - state->cinfo.src->bytes_in_buffer;
+ fz_warn("jpeg error: %s", state->msg);
+ goto skip;
+ }
+
if (state->init)
jpeg_finish_decompress(&state->cinfo);
+skip:
state->chain->rp = state->chain->wp - state->cinfo.src->bytes_in_buffer;
jpeg_destroy_decompress(&state->cinfo);
fz_free(state->scanline);