From 5e1b4f2c00ec14096607cae77b3645c85d151963 Mon Sep 17 00:00:00 2001 From: Benjamin Gilbert Date: Wed, 11 Apr 2012 14:07:04 -0400 Subject: [PATCH] fail vips7 openslide if level argument is not numeric in case users forget the leading comma when specifying an associated image, etc. --- libvips/deprecated/im_openslide2vips.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/libvips/deprecated/im_openslide2vips.c b/libvips/deprecated/im_openslide2vips.c index bce56b63..49b14af6 100644 --- a/libvips/deprecated/im_openslide2vips.c +++ b/libvips/deprecated/im_openslide2vips.c @@ -58,14 +58,21 @@ im_openslide2vips( const char *name, IMAGE *out ) char *p, *q; char *associated; int level; + char *endptr; VipsImage *t; im_filename_split( name, filename, mode ); level = 0; associated = NULL; p = &mode[0]; - if( (q = im_getnextoption( &p )) ) - level = atoi( q ); + if( (q = im_getnextoption( &p )) ) { + level = strtoul( q, &endptr, 10 ); + if( *endptr ) { + vips_error( "openslide2vips", "%s", + _( "level must be a number" ) ); + return( -1 ); + } + } if( (q = im_getnextoption( &p )) ) associated = q;