work around g-ir crash

This commit is contained in:
John Cupitt 2014-04-10 10:57:39 +01:00
parent b8dbd4dfce
commit ce5a01290d
4 changed files with 11 additions and 9 deletions

View File

@ -56,10 +56,6 @@ typedef void *(*VipsSListMap2Fn)( void *, void *, void * );
typedef void *(*VipsSListMap4Fn)( void *, void *, void *, void *, void * ); typedef void *(*VipsSListMap4Fn)( void *, void *, void *, void *, void * );
typedef void *(*VipsSListFold2Fn)( void *, void *, void *, void * ); typedef void *(*VipsSListFold2Fn)( void *, void *, void *, void * );
/* We need to fwd ref this in many places.
*/
typedef struct _VipsImage VipsImage;
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif /*__cplusplus*/ #endif /*__cplusplus*/

View File

@ -453,6 +453,11 @@ gboolean vips_band_format_iscomplex( VipsBandFormat format );
int vips_system( const char *cmd_format, ... ) int vips_system( const char *cmd_format, ... )
__attribute__((sentinel)); __attribute__((sentinel));
/* Defined in type.c, but declared here since they use VipsImage.
*/
VipsImage **vips_value_get_array_image( const GValue *value, int *n );
int vips_value_set_array_image( GValue *value, VipsImage **array, int n );
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif /*__cplusplus*/ #endif /*__cplusplus*/

View File

@ -188,15 +188,16 @@ void *vips_value_get_array( const GValue *value,
double *vips_value_get_array_double( const GValue *value, int *n ); double *vips_value_get_array_double( const GValue *value, int *n );
int vips_value_set_array_double( GValue *value, const double *array, int n ); int vips_value_set_array_double( GValue *value, const double *array, int n );
VipsImage **vips_value_get_array_image( const GValue *value, int *n );
int vips_value_set_array_image( GValue *value, VipsImage **array, int n );
int *vips_value_get_array_int( const GValue *value, int *n ); int *vips_value_get_array_int( const GValue *value, int *n );
int vips_value_set_array_int( GValue *value, const int *array, int n ); int vips_value_set_array_int( GValue *value, const int *array, int n );
GObject **vips_value_get_array_object( const GValue *value, int *n ); GObject **vips_value_get_array_object( const GValue *value, int *n );
int vips_value_set_array_object( GValue *value, int n ); int vips_value_set_array_object( GValue *value, int n );
/* See also image.h, that has vips_value_get_array_image() and
* vips_value_set_array_image(). They need to be declared after VipsImage.
*/
void vips__meta_init_types( void ); void vips__meta_init_types( void );
#ifdef __cplusplus #ifdef __cplusplus

View File

@ -1280,7 +1280,7 @@ vips_value_set_array_double( GValue *value, const double *array, int n )
* Return the start of the array of images held by @value. * Return the start of the array of images held by @value.
* optionally return the number of elements in @n. * optionally return the number of elements in @n.
* *
* See also: vips_array_image_set(). * See also: vips_value_set_array_image().
* *
* Returns: (transfer none): The array address. * Returns: (transfer none): The array address.
*/ */
@ -1293,7 +1293,7 @@ vips_value_get_array_image( const GValue *value, int *n )
/** /**
* vips_value_set_array_image: * vips_value_set_array_image:
* @value: (out): %GValue to get from * @value: (out): %GValue to get from
* @array: (array length=n): array of doubles * @array: (array length=n): array of images
* @n: the number of elements * @n: the number of elements
* *
* Set @value to hold a copy of @array. Pass in the array length in @n. * Set @value to hold a copy of @array. Pass in the array length in @n.