diff --git a/libvips/include/vips/object.h b/libvips/include/vips/object.h index 42336dec..37b347e3 100644 --- a/libvips/include/vips/object.h +++ b/libvips/include/vips/object.h @@ -332,7 +332,8 @@ int vips_object_get_argument_priority( VipsObject *object, const char *name ); /* We have many props on the arg table ... filter out the \ * ones for this class. \ */ \ - if( g_object_class_find_property( \ + if( ARG_INSTANCE && \ + g_object_class_find_property( \ G_OBJECT_CLASS( object_class ), \ g_param_spec_get_name( PSPEC ) ) == PSPEC ) { diff --git a/libvips/iofuncs/object.c b/libvips/iofuncs/object.c index c161b87c..902d1912 100644 --- a/libvips/iofuncs/object.c +++ b/libvips/iofuncs/object.c @@ -346,7 +346,7 @@ vips_argument_table_destroy( VipsArgumentTable *table ) * non-%NULL value from @fn. */ void * -vips_argument_map( VipsObject *object, +vips_argument_map1( VipsObject *object, VipsArgumentMapFn fn, void *a, void *b ) { /* Make sure we can't go during the loop. This can happen if eg. we