diff --git a/libvips/foreign/gifload.c b/libvips/foreign/gifload.c index 4f6a4483..122e5f40 100644 --- a/libvips/foreign/gifload.c +++ b/libvips/foreign/gifload.c @@ -571,7 +571,7 @@ vips_foreign_load_gif_set_header( VipsForeignLoadGif *gif, VipsImage *image ) 1.0, 1.0 ); vips_image_pipelinev( image, VIPS_DEMAND_STYLE_FATSTRIP, NULL ); - if( gif->n > 1 ) + if( vips_object_argument_isset( VIPS_OBJECT( gif ), "n" ) ) vips_image_set_int( image, VIPS_META_PAGE_HEIGHT, gif->file->SHeight ); vips_image_set_int( image, VIPS_META_N_PAGES, gif->n_pages ); diff --git a/libvips/foreign/heifload.c b/libvips/foreign/heifload.c index d475b076..73bceab2 100644 --- a/libvips/foreign/heifload.c +++ b/libvips/foreign/heifload.c @@ -382,7 +382,7 @@ vips_foreign_load_heif_set_header( VipsForeignLoadHeif *heif, VipsImage *out ) vips_image_set_int( out, "heif-primary", heif->primary_page ); vips_image_set_int( out, "n-pages", heif->n_top ); - if( heif->n > 1 ) + if( vips_object_argument_isset( VIPS_OBJECT( heif ), "n" ) ) vips_image_set_int( out, VIPS_META_PAGE_HEIGHT, heif->page_height ); diff --git a/libvips/foreign/magick7load.c b/libvips/foreign/magick7load.c index 3167f30b..6592ff74 100644 --- a/libvips/foreign/magick7load.c +++ b/libvips/foreign/magick7load.c @@ -595,7 +595,7 @@ vips_foreign_load_magick7_parse( VipsForeignLoadMagick7 *magick7, /* So we can finally set the height. */ - if( magick7->n_frames > 1 ) { + if( vips_object_argument_isset( VIPS_OBJECT( magick7 ), "n" ) ) { vips_image_set_int( out, VIPS_META_PAGE_HEIGHT, out->Ysize ); out->Ysize *= magick7->n_frames; } diff --git a/libvips/foreign/niftiload.c b/libvips/foreign/niftiload.c index cd90ab4b..11461843 100644 --- a/libvips/foreign/niftiload.c +++ b/libvips/foreign/niftiload.c @@ -505,7 +505,7 @@ vips_foreign_load_nifti_set_header( VipsForeignLoadNifti *nifti, vips_image_set_blob_copy( out, txt, ext->edata, ext->esize ); } - if( nim->ny > 1 ) + if( vips_object_argument_isset( VIPS_OBJECT( nifti ), "n" ) ) vips_image_set_int( out, VIPS_META_PAGE_HEIGHT, nim->ny ); return( 0 ); diff --git a/libvips/foreign/pdfiumload.c b/libvips/foreign/pdfiumload.c index f0a022f0..4deb2ba0 100644 --- a/libvips/foreign/pdfiumload.c +++ b/libvips/foreign/pdfiumload.c @@ -363,8 +363,7 @@ vips_foreign_load_pdf_header( VipsForeignLoad *load ) for( i = 1; i < pdf->n; i++ ) if( pdf->pages[i].height != pdf->pages[0].height ) break; - if( i == pdf->n && - pdf->n > 1 ) + if( vips_object_argument_isset( VIPS_OBJECT( pdf ), "n" ) ) vips_image_set_int( load->out, VIPS_META_PAGE_HEIGHT, pdf->pages[0].height ); diff --git a/libvips/foreign/pdfload.c b/libvips/foreign/pdfload.c index 86c1d992..1a6e5b74 100644 --- a/libvips/foreign/pdfload.c +++ b/libvips/foreign/pdfload.c @@ -317,8 +317,7 @@ vips_foreign_load_pdf_header( VipsForeignLoad *load ) for( i = 1; i < pdf->n; i++ ) if( pdf->pages[i].height != pdf->pages[0].height ) break; - if( i == pdf->n && - pdf->n > 1 ) + if( vips_object_argument_isset( VIPS_OBJECT( pdf ), "n" ) ) vips_image_set_int( load->out, VIPS_META_PAGE_HEIGHT, pdf->pages[0].height );