lower I thresh for orc compile

fixes a segv with very large and complex morph masks
This commit is contained in:
John Cupitt 2012-03-13 13:11:06 +00:00
parent 15c5f330c4
commit b8d977544c
1 changed files with 6 additions and 2 deletions

View File

@ -270,9 +270,11 @@ vips_vector_full( VipsVector *vector )
if( vector->n_source + vector->n_scanline + 1 > 7 )
return( TRUE );
/* I seem to get segvs with I counts over about 50 :-( argh.
/* I seem to get segvs with I counts over about 50 :-( argh. After
* signalling full, some operations will add up to 4 more instructions
* as they finish up. Leave a margin.
*/
if( vector->n_instruction > 45 )
if( vector->n_instruction > 42 )
return( TRUE );
return( FALSE );
@ -284,6 +286,8 @@ vips_vector_compile( VipsVector *vector )
#ifdef HAVE_ORC
OrcCompileResult result;
vips_vector_print( vector );
result = orc_program_compile( vector->program );
if( !ORC_COMPILE_RESULT_IS_SUCCESSFUL( result ) ) {
#ifdef DEBUG