summaryrefslogtreecommitdiff
path: root/src/sfnt.c
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2024-01-06 15:24:58 +0800
committerPo Lu <luangruo@yahoo.com>2024-01-06 15:28:05 +0800
commit2f59052602e71fb818dd5d671be119793864e712 (patch)
treecceb8e607a87e2e4913daa64b254bd9912a13d4a /src/sfnt.c
parent37889523278fe65733938fb11c3701898309961c (diff)
downloademacs-2f59052602e71fb818dd5d671be119793864e712.tar.gz
Properly parse TTC tables with digital signatures
* src/sfnt.c (sfnt_read_ttc_header): Don't inadvertently overwrite first two offsets while reading the digital signature.
Diffstat (limited to 'src/sfnt.c')
-rw-r--r--src/sfnt.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/sfnt.c b/src/sfnt.c
index aa8b49a9ecd..36240f4cdff 100644
--- a/src/sfnt.c
+++ b/src/sfnt.c
@@ -6195,7 +6195,7 @@ sfnt_read_ttc_header (int fd)
size = (SFNT_ENDOF (struct sfnt_ttc_header, ul_dsig_offset,
uint32_t)
- offsetof (struct sfnt_ttc_header, ul_dsig_tag));
- rc = read (fd, &ttc->ul_dsig_offset, size);
+ rc = read (fd, &ttc->ul_dsig_tag, size);
if (rc == -1 || rc < size)
{
xfree (ttc);
@@ -20631,8 +20631,8 @@ main (int argc, char **argv)
return 1;
}
-#define FANCY_PPEM 44
-#define EASY_PPEM 44
+#define FANCY_PPEM 14
+#define EASY_PPEM 14
interpreter = NULL;
head = sfnt_read_head_table (fd, font);