From a81c96c0348af8caf6ae45e2d942a676792a2a31 Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Sun, 13 Oct 2024 11:17:48 +0200 Subject: Documentation and minor improvements MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- libparsepcf_get_properties.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'libparsepcf_get_properties.c') diff --git a/libparsepcf_get_properties.c b/libparsepcf_get_properties.c index f586a5c..9b7e383 100644 --- a/libparsepcf_get_properties.c +++ b/libparsepcf_get_properties.c @@ -3,10 +3,11 @@ int -libparsepcf_get_properties(const char *file, size_t size, +libparsepcf_get_properties(const void *file, size_t size, const struct libparsepcf_table *table, - struct libparsepcf_properties *out) + struct libparsepcf_properties *meta) { + const char *text = file; size_t pos; int msb = table->format & LIBPARSEPCF_BYTE; @@ -17,25 +18,25 @@ libparsepcf_get_properties(const char *file, size_t size, pos = table->offset; - if (table->format != libparsepcf_parse_lsb_uint32__(&file[pos])) + if (table->format != libparsepcf_parse_lsb_uint32__(&text[pos])) goto ebfont; pos += 4; - out->property_count = (size_t)PARSE_UINT32(&file[pos], msb); + meta->property_count = (size_t)PARSE_UINT32(&text[pos], msb); pos += 4; if (4 > table->size - (pos - table->offset) || - out->property_count > (table->size - (pos - table->offset) - 4) / 9) + meta->property_count > (table->size - (pos - table->offset) - 4) / 9) goto ebfont; - pos += out->property_count * 9; - pos += (4 - (out->property_count & 3)) & 3; + pos += meta->property_count * 9; + pos += (4 - (meta->property_count & 3)) & 3; if (pos - table->offset > table->size - 4) goto ebfont; - out->strings_size = (size_t)PARSE_UINT32(&file[pos], msb); + meta->strings_size = (size_t)PARSE_UINT32(&text[pos], msb); pos += 4; - out->strings = &file[pos]; - if (out->strings_size > table->size - (pos - table->offset)) + meta->strings = &text[pos]; + if (meta->strings_size > table->size - (pos - table->offset)) goto ebfont; return 0; -- cgit v1.2.3-70-g09d2