Mercurial > hg > dmlib
comparison tools/gfxconv.c @ 2533:78ece6187a7c
Make sure we won't access DMC64Image::extraData[] indices out of bounds when
dumping memory blocks.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 12 Jul 2020 01:01:37 +0300 |
parents | f3be70c19ce9 |
children | c6ee41fd98dd |
comparison
equal
deleted
inserted
replaced
2532:f3be70c19ce9 | 2533:78ece6187a7c |
---|---|
1763 for (int i = 0; i < img->nblocks; i++) | 1763 for (int i = 0; i < img->nblocks; i++) |
1764 { | 1764 { |
1765 res = dmDumpC64Block(fprefix, "bitmap", &img->bitmap[i], i); | 1765 res = dmDumpC64Block(fprefix, "bitmap", &img->bitmap[i], i); |
1766 res = dmDumpC64Block(fprefix, "color", &img->color[i], i); | 1766 res = dmDumpC64Block(fprefix, "color", &img->color[i], i); |
1767 res = dmDumpC64Block(fprefix, "screen", &img->screen[i], i); | 1767 res = dmDumpC64Block(fprefix, "screen", &img->screen[i], i); |
1768 res = dmDumpC64Block(fprefix, "extradata", &img->extraData[i], i); | |
1769 res = dmDumpC64Block(fprefix, "chardata", &img->charData[i], i); | 1768 res = dmDumpC64Block(fprefix, "chardata", &img->charData[i], i); |
1769 | |
1770 if ((size_t) i < sizeof(img->extraData) / sizeof(img->extraData[0])) | |
1771 res = dmDumpC64Block(fprefix, "extradata", &img->extraData[i], i); | |
1770 } | 1772 } |
1771 | 1773 |
1772 return res; | 1774 return res; |
1773 } | 1775 } |
1774 | 1776 |