summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2013-04-29 12:52:47 +0100
committerRobin Watts <robin.watts@artifex.com>2013-04-29 13:00:26 +0100
commit3c8628bb3336fce72529ca53e1f236ca368ae0c9 (patch)
tree7500e6b7f0ef949daa322232aad80618b45c16c7
parent7696a4678e1eee59488649ef20f7fbb4d7d3fc0c (diff)
downloadmupdf-3c8628bb3336fce72529ca53e1f236ca368ae0c9.tar.xz
Bug 693939: Fix memory problems.
2 more memory problems pointed out by mhfan - many thanks. In the text device, run through the line height list to it's length, not to it's capacity. In the X11 image code, when copying data unchanged, copy whole ints, not just the first quarter of the bytes.
-rw-r--r--apps/x11_image.c2
-rw-r--r--fitz/dev_text.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/apps/x11_image.c b/apps/x11_image.c
index 6392d868..e8cd4455 100644
--- a/apps/x11_image.c
+++ b/apps/x11_image.c
@@ -545,7 +545,7 @@ ximage_convert_rgba8888(PARAMS)
int x, y;
for (y = 0; y < h; y++) {
for (x = 0; x < w; x++) {
- dst[x] = src[x];
+ ((unsigned *)dst)[x] = ((unsigned *)src)[x];
}
dst += dststride;
src += srcstride;
diff --git a/fitz/dev_text.c b/fitz/dev_text.c
index 1f88818d..e9d18bb3 100644
--- a/fitz/dev_text.c
+++ b/fitz/dev_text.c
@@ -1365,7 +1365,7 @@ insert_line_height(line_heights *lh, fz_text_style *style, float height)
#endif
/* If we have one already, add it in */
- for (i=0; i < lh->cap; i++)
+ for (i=0; i < lh->len; i++)
{
/* Match if we are within 5% */
if (lh->lh[i].style == style && lh->lh[i].height * 0.95 <= height && lh->lh[i].height * 1.05 >= height)