2015-06-02 11:22:56 -05:00
|
|
|
--- goo/GooString.cc
|
|
|
|
+++ goo/GooString.cc
|
|
|
|
@@ -161,7 +161,7 @@
|
|
|
|
// assert(s != s1) the roundedSize condition ensures this
|
|
|
|
if (newLength < length) {
|
|
|
|
memcpy(s1, s, newLength);
|
|
|
|
- } else {
|
|
|
|
+ } else if (length != 0) {
|
|
|
|
memcpy(s1, s, length);
|
|
|
|
}
|
|
|
|
if (s != sStatic)
|
2015-03-10 06:35:37 -05:00
|
|
|
--- poppler/Stream.cc
|
|
|
|
+++ poppler/Stream.cc
|
|
|
|
@@ -2966,12 +2966,12 @@
|
|
|
|
} else {
|
|
|
|
amp = 0;
|
|
|
|
}
|
|
|
|
- data[0] += (*prevDC += amp) << scanInfo.al;
|
|
|
|
+ data[0] += (int) ((unsigned) (*prevDC += amp) << scanInfo.al);
|
|
|
|
} else {
|
|
|
|
if ((bit = readBit()) == 9999) {
|
|
|
|
return gFalse;
|
|
|
|
}
|
|
|
|
- data[0] += bit << scanInfo.al;
|
|
|
|
+ data[0] += (unsigned) bit << scanInfo.al;
|
|
|
|
}
|
|
|
|
++i;
|
|
|
|
}
|
|
|
|
@@ -3064,7 +3064,7 @@
|
|
|
|
j = dctZigZag[i++];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
- data[j] = amp << scanInfo.al;
|
|
|
|
+ data[j] = (unsigned) amp << scanInfo.al;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@@ -3251,8 +3251,8 @@
|
|
|
|
v3 = p[6];
|
|
|
|
v4 = (dctSqrt1d2 * (p[1] - p[7]) + 128) >> 8;
|
|
|
|
v7 = (dctSqrt1d2 * (p[1] + p[7]) + 128) >> 8;
|
|
|
|
- v5 = p[3] << 4;
|
|
|
|
- v6 = p[5] << 4;
|
|
|
|
+ v5 = (unsigned) p[3] << 4;
|
|
|
|
+ v6 = (unsigned) p[5] << 4;
|
|
|
|
|
|
|
|
// stage 3
|
|
|
|
t = (v0 - v1+ 1) >> 1;
|
2015-03-02 04:07:30 -06:00
|
|
|
--- poppler/XRef.cc
|
|
|
|
+++ poppler/XRef.cc
|
|
|
|
@@ -293,6 +293,7 @@
|
|
|
|
xRefStream = gFalse;
|
|
|
|
scannedSpecialFlags = gFalse;
|
|
|
|
encrypted = gFalse;
|
|
|
|
+ encAlgorithm = cryptRC4;
|
|
|
|
permFlags = defPermFlags;
|
|
|
|
ownerPasswordOk = gFalse;
|
|
|
|
rootNum = -1;
|