From 992921b012e4debe4f24c463789850bb18862497 Mon Sep 17 00:00:00 2001 From: John Cupitt Date: Mon, 22 Oct 2007 14:09:41 +0000 Subject: [PATCH] stuff --- TODO | 6 ------ libsrc/convolution/im_spcor.c | 16 +++++++--------- libsrc/iofuncs/package.c | 4 +--- 3 files changed, 8 insertions(+), 18 deletions(-) diff --git a/TODO b/TODO index 03470ddc..52bf1bc9 100644 --- a/TODO +++ b/TODO @@ -1,11 +1,5 @@ - test maxpos_avg, quite a few changes -- test maxpos_vec, quite a few changes - - also, same problem as maxpos_avg re. uninit data? - -- im_spcor2() has a potential leak in the start function - Python binding ============== diff --git a/libsrc/convolution/im_spcor.c b/libsrc/convolution/im_spcor.c index 89c6c9e9..e151d6f6 100644 --- a/libsrc/convolution/im_spcor.c +++ b/libsrc/convolution/im_spcor.c @@ -410,20 +410,19 @@ static void * spcor2_start( IMAGE *r, void *a, void *b ){ IMAGE *f= (IMAGE *) a; - REGION *reg= im_region_create( f ); spcor2_seq *seq; - if( ! reg ) - return NULL; - - seq= IM_NEW( NULL, spcor2_seq ); + seq= IM_NEW( r, spcor2_seq ); if( ! seq ) return NULL; - seq-> f= reg; + seq-> f= im_region_create( f ); seq-> f_cols= NULL; seq-> max_cols= 0; + if( ! seq-> f ) + return NULL; + return seq; } @@ -528,9 +527,8 @@ spcor2_stop( void *vseq, void *a, void *b ){ spcor2_seq *seq= (spcor2_seq *) vseq; - im_region_free( seq-> f ); - im_free( seq-> f_cols ); - im_free( seq ); + IM_FREEF( im_region_free, seq-> f ); + IM_FREE( seq-> f_cols ); return 0; } diff --git a/libsrc/iofuncs/package.c b/libsrc/iofuncs/package.c index 72a3866e..1ceb8ffe 100644 --- a/libsrc/iofuncs/package.c +++ b/libsrc/iofuncs/package.c @@ -886,11 +886,9 @@ print_args( im_function *fn, im_object *vargv ) /* Print all elements. */ for( i = 0; i < vargc; i++ ) - if( fn->argv[i].print && vargv[i] ) { - printf( "%s: ", fn->argv[i].name ); + if( fn->argv[i].print && vargv[i] ) if( fn->argv[i].print( vargv[i] ) ) return( -1 ); - } return( 0 ); }