diff options
author | Ken Sharp <ken.sharp@artifex.com> | 2019-11-17 19:48:10 +0000 |
---|---|---|
committer | Ken Sharp <ken.sharp@artifex.com> | 2019-11-17 19:48:10 +0000 |
commit | da03855bf9ca18eab05d4ac870d73f457758a77f (patch) | |
tree | c7ad06763ce1110e077c9213a3cc5e5fc7c17389 /devices/gdevepsn.c | |
parent | 0aa9d4f8237f7a0b459fc567e76ab8f0c4c2eebd (diff) | |
download | ghostpdl-da03855bf9ca18eab05d4ac870d73f457758a77f.tar.gz |
txtwrite - fix buffer overflow
Bug #701877 "heap-buffer-overflow at devices/vector/gdevtxtw.c:2114 in txt_add_fragment"
We were trying to read too many entries from the enumerator 'Widths'
array, because we were reading the number of Unicode code points,
instead of the number of character codes.
At the same time.....
re-instate the code which uses & on the glyph lists and casts them to
appropriate pointers. While gcc happily works with the code that was
modified to make Coverity happy, Visual Studio absolutely does not.
In order to make Visual Studio happy we do need the crazy pointers and
casting. I think this is wrong, but this way works on both compilers
and I couldn't find any other construction which did.
Diffstat (limited to 'devices/gdevepsn.c')
0 files changed, 0 insertions, 0 deletions