This commit is contained in:
John Cupitt 2014-03-20 09:15:15 +00:00
parent cec8867ce0
commit 06b8b7a0f3

View File

@ -45,12 +45,14 @@
typedef struct _VipsHough { typedef struct _VipsHough {
VipsStatistic parent_instance; VipsStatistic parent_instance;
/* Lock writes to the output image with this. We can't have a separate /* Each thread adds its output image to this array on stop. ith is the
* output for each thread, memory use would be crazy. * index the ith thread places its image at.
*/ */
GMutex *lock; VipsImage **threads;
int n_threads;
int ith;
/* Accumulate the transform in this large memory image. /* Sum the thread outputs to here.
*/ */
VipsImage *out; VipsImage *out;
@ -65,7 +67,7 @@ vips_hough_dispose( GObject *gobject )
{ {
VipsHough *hough = (VipsHough *) gobject; VipsHough *hough = (VipsHough *) gobject;
VIPS_FREEF( vips_g_mutex_free, hough->lock ); unref the threads images, if any
G_OBJECT_CLASS( vips_hough_parent_class )->dispose( gobject ); G_OBJECT_CLASS( vips_hough_parent_class )->dispose( gobject );
} }