From c714a2b31576cc920cf806154a023ecf6bfcb161 Mon Sep 17 00:00:00 2001 From: Lovell Fuller Date: Fri, 25 Sep 2020 18:51:48 +0100 Subject: [PATCH 1/2] heifload: prevent reading beyond end of source buffer --- libvips/foreign/heifload.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libvips/foreign/heifload.c b/libvips/foreign/heifload.c index 7ee306f6..f9c3830c 100644 --- a/libvips/foreign/heifload.c +++ b/libvips/foreign/heifload.c @@ -961,7 +961,11 @@ vips_foreign_load_heif_wait_for_file_size( gint64 target_size, void *userdata ) enum heif_reader_grow_status status; - if( heif->length == -1 ) + if( heif->source->data != NULL && target_size > heif->source->length ) + /* Target size is beyond known buffer length + */ + status = heif_reader_grow_status_size_beyond_eof; + else if( heif->length == -1 ) /* We've not seen EOF yet, so seeking to any point is fine (as * far as we know). */ From e3181e05799fa1e51e1a4f8fc6884e3f9c3de765 Mon Sep 17 00:00:00 2001 From: John Cupitt Date: Mon, 28 Sep 2020 12:32:06 +0100 Subject: [PATCH 2/2] get docs building with goi 1.66+ It builds now, but some doc sections are missing. Fix this properly in 8.11. See https://github.com/libvips/libvips/issues/1836 --- ChangeLog | 1 + libvips/iofuncs/error.c | 2 +- libvips/iofuncs/rect.c | 2 +- libvips/resample/interpolate.c | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index b2225875..bb6df2f7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -10,6 +10,7 @@ - better heif signature detection [lovell] - fix vips_fractsurf() typo [kleisauke] - better heif EOF detection [lovell] +- fix gir build with g-o-i 1.66+ [László] 9/8/20 started 8.10.1 - fix markdown -> xml conversion in doc generation diff --git a/libvips/iofuncs/error.c b/libvips/iofuncs/error.c index 16562384..746742cb 100644 --- a/libvips/iofuncs/error.c +++ b/libvips/iofuncs/error.c @@ -71,7 +71,7 @@ #endif /*OS_WIN32*/ /** - * SECTION: error + * SECTION: errors * @short_description: error messages and error handling * @stability: Stable * @include: vips/vips.h diff --git a/libvips/iofuncs/rect.c b/libvips/iofuncs/rect.c index 79ae69f7..9038efb9 100644 --- a/libvips/iofuncs/rect.c +++ b/libvips/iofuncs/rect.c @@ -45,7 +45,7 @@ #include /** - * SECTION: rect + * SECTION: rectangle * @short_description: the VIPS rectangle class * @stability: Stable * @see_also: region diff --git a/libvips/resample/interpolate.c b/libvips/resample/interpolate.c index 5ec50b74..d295ad9f 100644 --- a/libvips/resample/interpolate.c +++ b/libvips/resample/interpolate.c @@ -63,7 +63,7 @@ #include /** - * SECTION: interpolate + * SECTION: interpolator * @short_description: various interpolators: nearest, bilinear, and * some non-linear * @stability: Stable