diff options
Diffstat (limited to 'app-text/ptex/files/xpdf2-underflow.patch')
-rw-r--r-- | app-text/ptex/files/xpdf2-underflow.patch | 81 |
1 files changed, 0 insertions, 81 deletions
diff --git a/app-text/ptex/files/xpdf2-underflow.patch b/app-text/ptex/files/xpdf2-underflow.patch deleted file mode 100644 index 9371be84352e..000000000000 --- a/app-text/ptex/files/xpdf2-underflow.patch +++ /dev/null @@ -1,81 +0,0 @@ -diff -ru xpdf-2.02pl1/xpdf/XRef.cc xpdf-2.02pl1/xpdf/XRef.cc ---- xpdf-2.02pl1/xpdf/XRef.cc 2004-10-29 15:16:45.790089001 +0200 -+++ xpdf-2.02pl1/xpdf/XRef.cc 2004-10-29 15:11:54.132168025 +0200 -@@ -66,6 +66,8 @@ - start = str->getStart(); - pos = readTrailer(); - -+ entries = NULL; -+ - // if there was a problem with the trailer, - // try to reconstruct the xref table - if (pos == 0) { -@@ -76,7 +78,7 @@ - - // trailer is ok - read the xref table - } else { -- if (size*sizeof(XRefEntry)/sizeof(XRefEntry) != size) { -+ if ((size < 0) || (size*sizeof(XRefEntry)/sizeof(XRefEntry) != size)) { - error(-1, "Invalid 'size' inside xref table."); - ok = gFalse; - errCode = errDamaged; -@@ -181,7 +183,7 @@ - n = atoi(p); - while ('0' <= *p && *p <= '9') ++p; - while (isspace(*p)) ++p; -- if (p == buf) -+ if ((p == buf) || (n < 0)) /* must make progress */ - return 0; - pos1 += (p - buf) + n * 20; - } -@@ -255,6 +257,10 @@ - } - s[i] = '\0'; - first = atoi(s); -+ if (first < 0) { -+ error(-1, "Invalid 'first'"); -+ goto err2; -+ } - while ((c = str->lookChar()) != EOF && isspace(c)) { - str->getChar(); - } -@@ -266,6 +272,10 @@ - } - s[i] = '\0'; - n = atoi(s); -+ if (n<=0) { -+ error(-1, "Invalid 'n'"); -+ goto err2; -+ } - while ((c = str->lookChar()) != EOF && isspace(c)) { - str->getChar(); - } -@@ -273,7 +283,7 @@ - // table size - if (first + n > size) { - newSize = size + 256; -- if (newSize*sizeof(XRefEntry)/sizeof(XRefEntry) != newSize) { -+ if ((newSize < 0) || (newSize*sizeof(XRefEntry)/sizeof(XRefEntry) != newSize)) { - error(-1, "Invalid 'newSize'"); - goto err2; - } -@@ -406,6 +416,10 @@ - // look for object - } else if (isdigit(*p)) { - num = atoi(p); -+ if (num < 0) { -+ error(-1, "Invalid 'num' parameters."); -+ return gFalse; -+ } - do { - ++p; - } while (*p && isdigit(*p)); -@@ -425,7 +439,7 @@ - if (!strncmp(p, "obj", 3)) { - if (num >= size) { - newSize = (num + 1 + 255) & ~255; -- if (newSize*sizeof(XRefEntry)/sizeof(XRefEntry) != newSize) { -+ if ((newSize < 0) || (newSize*sizeof(XRefEntry)/sizeof(XRefEntry) != newSize)) { - error(-1, "Invalid 'obj' parameters."); - return gFalse; - } |